当文件上传在更新面板下时如何上传图像?
我在该更新面板中有一个按钮说“上传”。
当我在按钮单击事件中单击该按钮时,我得到了 fileupload hasfile=false。当文件上传控件在更新面板内并且按钮正在进行异步回发时,请建议是否有任何方法可以上传图像文件。
提前致谢。
当文件上传在更新面板下时如何上传图像?
我在该更新面板中有一个按钮说“上传”。
当我在按钮单击事件中单击该按钮时,我得到了 fileupload hasfile=false。当文件上传控件在更新面板内并且按钮正在进行异步回发时,请建议是否有任何方法可以上传图像文件。
提前致谢。
这不可能。出于安全原因,浏览器不允许 javascript 上传文件。
此问题有两种正常的解决方法:
我最近应用这个工具在我的网页中异步上传文件,它工作得很好:http: //valums.com/ajax-upload/ 它会自动为您创建一个 iFrame,并发布框架并发送结果 html (或 json 对象)到事件处理程序。我的页面接收上传的文件,返回一个描述文件的 json 对象,例如文件名和唯一的 id,以便我可以将发布在主页上的数据链接到上传的文件。
为了安全起见,我存储了上传文件的用户的凭据,因此当表单发布时,我可以验证发布表单的用户确实是上传文件的用户。
你可以使用 AJAX AsyncFileUpload 控件
http://www.asp.net/AJAX/AjaxControlToolkit/Samples/AsyncFileUpload/AsyncFileUpload.aspx
还要检查这个线程。 在没有完整回发的 AJAX 更新面板中上传文件
我试过如下。这是工作。
<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>