2009-10-20 5 views
2

Comment télécharger une image quand fileupload est sous updatepanel?Comment télécharger une image lorsque le contrôle fileupload est sous updatepanel?

J'ai un bouton "télécharger" dans ce panneau de mise à jour.

Lorsque je clique sur ce bouton à l'intérieur de l'événement de clic sur un bouton, j'ai le fichier hasfile = false. S'il vous plaît suggérer s'il n'y a aucun moyen de télécharger le fichier image lorsque le contrôle fileupload est dans le panneau de mise à jour et que le bouton fait asyncpostback.

Merci d'avance.

Répondre

1

Ce n'est pas possible. Pour des raisons de sécurité, le navigateur n'autorise pas le javascript à télécharger des fichiers.

Il existe deux solutions de contournement normales pour ce problème:

  • procéder au chargement dans un iFrame
  • Utilisez un plugin flash pour le téléchargement

J'ai récemment appliqué cet outil pour télécharger des fichiers de manière asynchrone ma page Web, et il fonctionne beatifully: http://valums.com/ajax-upload/ Il crée automatiquement un iFrame pour vous et publie le cadre et envoie le html résultant (ou l'objet json) à un gestionnaire d'événement. Ma page qui reçoit le fichier téléchargé renvoie un objet json décrivant le fichier, par ex. nom de fichier et un identifiant unique, de sorte que je puisse lier les données qui sont affichées sur la page principale au fichier téléchargé.

Pour des raisons de sécurité, je stocke les informations d'identification de l'utilisateur qui télécharge le fichier. Ainsi, lorsque le formulaire est posté, je peux valider que l'utilisateur qui publie le formulaire est bien celui qui a téléchargé le fichier.

0

J'avais essayé comme ci-dessous. Ça fonctionne.

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="conditional"> 
<ContentTemplate> 
<asp:FileUpload ID="FileUpload1" runat="server" /> 
<asp:Button ID="Upload" runat="server" Text="Upload" OnClick="Upload_Click" /><br /> 
<asp:Image ID="NormalImage" runat="server" /></ContentTemplate> 
<Triggers> 
<asp:PostBackTrigger ControlID="Upload" /> 
</Triggers> 
</asp:UpdatePanel> 

Référence à

http://www.c-sharpcorner.com/uploadfile/prathore/fileupload-control-in-update-panel-using-Asp-Net-ajax/

Questions connexes