ASP.NET FileUpload:如何在选择文件后自动回发?

时间:2008-12-14 15:05:24

标签: asp.net

我正在开发一个ASP.NET应用程序,我需要在FileUpload控件中选择文件后回发到服务器,而不必让用户明确单击“提交”按钮。这可能吗?如果是的话,怎么样?

2 个答案:

答案 0 :(得分:23)

我假设您想立即开始上传。如果是这样,您应该对JavaScript中的change事件做出反应,并让它提交表单。

<!-- HTML code --->
<input 
  type="file" 
  onchange="if (confirm('Upload ' + this.value + '?')) this.form.submit();"
>

建议用户确认,因此他们可以控制流程,如果他们偶然选择了错误的文件,可以取消。

答案 1 :(得分:15)

第一个答案是正确的javascript,但ASP.NET不一定直接公开输入控件,所以最好将onchange事件放在F​​ileUpload控件上。

<asp:FileUpload ID="myFileUpload" onchange="if (confirm('Upload ' + this.value + '?')) this.form.submit();" runat="server" />

另一条路线是通过flash / silverlight / ajax提供丰富的上传。可以在Ajax Uploader找到一个很好的组件,大约100美元