我正在开发一个ASP.NET应用程序,我需要在FileUpload控件中选择文件后回发到服务器,而不必让用户明确单击“提交”按钮。这可能吗?如果是的话,怎么样?
答案 0 :(得分:23)
我假设您想立即开始上传。如果是这样,您应该对JavaScript中的change
事件做出反应,并让它提交表单。
<!-- HTML code --->
<input
type="file"
onchange="if (confirm('Upload ' + this.value + '?')) this.form.submit();"
>
建议用户确认,因此他们可以控制流程,如果他们偶然选择了错误的文件,可以取消。
答案 1 :(得分:15)
第一个答案是正确的javascript,但ASP.NET不一定直接公开输入控件,所以最好将onchange事件放在FileUpload控件上。
<asp:FileUpload ID="myFileUpload" onchange="if (confirm('Upload ' + this.value + '?')) this.form.submit();" runat="server" />
另一条路线是通过flash / silverlight / ajax提供丰富的上传。可以在Ajax Uploader找到一个很好的组件,大约100美元