fileuploadがupdatepanelの下にあるときに画像をアップロードするにはどうすればよいですか?
その更新パネル内に「アップロード」というボタンがあります。
ボタンクリックイベント内でそのボタンをクリックすると、fileupload hasfile=falseが返されます。fileuploadコントロールが更新パネル内にあり、ボタンが非同期ポストバックを行っているときに画像ファイルをアップロードする方法があるかどうかを提案してください。
前もって感謝します。
fileuploadがupdatepanelの下にあるときに画像をアップロードするにはどうすればよいですか?
その更新パネル内に「アップロード」というボタンがあります。
ボタンクリックイベント内でそのボタンをクリックすると、fileupload hasfile=falseが返されます。fileuploadコントロールが更新パネル内にあり、ボタンが非同期ポストバックを行っているときに画像ファイルをアップロードする方法があるかどうかを提案してください。
前もって感謝します。
それは不可能。セキュリティ上の理由から、ブラウザはjavascriptによるファイルのアップロードを許可していません。
この問題には、2つの通常の回避策があります。
最近、このツールを適用して、自分のWebページにファイルを非同期でアップロードしました。これは、正常に機能します。http: //valums.com/ajax-upload/ これにより、iFrameが自動的に作成され、フレームが投稿され、結果のhtmlが送信されます(またはjsonオブジェクト)をイベントハンドラーに追加します。アップロードされたファイルを受け取る私のページは、ファイルを説明するjsonオブジェクト(ファイル名や一意のIDなど)を返します。これにより、メインページに投稿されたデータをアップロードされたファイルにリンクできます。
セキュリティ上の理由から、ファイルをアップロードするユーザーの資格情報を保存しているので、フォームが投稿されたときに、フォームを投稿したユーザーが実際にファイルをアップロードしたユーザーであることを確認できます。
AJAXAsyncFileUploadコントロールを使用できます
http://www.asp.net/AJAX/AjaxControlToolkit/Samples/AsyncFileUpload/AsyncFileUpload.aspx
このスレッドも確認してください。 完全なポストバックなしでAJAXupdatepanelにファイルをアップロードする
私は以下のように試しました。動作しています。
<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>
への参照
このコードを試すことができます。私はそれを試しました、それは私の側で働いています。
<asp:ScriptManager runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" >
<ContentTemplate>
<div>
<asp:FileUpload ID="FileUpload1" runat="server" /> <br/>
<asp:Button ID="btn_Upload" runat="server" Text="Save" OnClick="btn_Upload_Click" /><br />
</div>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="btn_Upload" />
</Triggers>
</asp:UpdatePanel>