<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:FileUpload onchange="clickTheButton();" ID="FileUpload1" runat="server" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button1" />
</Triggers>
</asp:UpdatePanel>
botón 1 está fuera del panel de actualización y el código JavaScript que se ejecute cuando un usuario agrega un archivo en la caja de carga es la siguiente:¿FileUpload no funciona cuando está anidado en UpdatePanel? C#
function clickTheButton() {
document.getElementById('<%= Button1.ClientID %>').click();
}
El problema es simple. FileUpload1.HasFile == falso. No sé por qué es así, pero cuando lo pongo en el panel de actualización deja de funcionar.
He visto algunos otros hilos en esto. Pero ninguno de ellos responde por qué sucede esto, solo apuntan a cosas que puedes descargar.
EDIT: Realmente la razón principal por la que quiero hacer esto es para poder obtener una .. Etiqueta de archivo ..Uploading .. para que aparezca mientras el cliente carga el servidor y una vez que se haya completado, muéstrelo en un datalist Simplemente no puedo hacer que UpdateProgress funcione.
El progreso de la actualización no funciona con una devolución de datos completa, ¿verdad? – Jason
Correcto, no tendrá una forma de controlar el progreso, excepto si su navegador muestra una barra de carga durante la devolución de datos, que no parece ser una forma confiable en todos los navegadores. – jamone
esto es muy viejo, ahora podemos devolverlo a través de js, pero ¿cómo? – Adeem