我有一个网络表单应用程序。
有一个表单有一组文本框和一个上传者,一个“上传按钮”和一个“提交按钮”。
当用户使用上传器(type='file')选择文件而没有点击“上传”或忘记点击时,他会提交表单。
服务器端会以某种方式将文件读取到某个地方。
我不希望提交包含所选文件。
除了在提交功能中添加“清理上传者”之外,我还能做些什么来让表单排除输入(类型=文件)控件?
谢谢
标签 [html][form][action][post]
在表单上使用input type="file"
时,您还必须enctype="multipart/form-data"
在表单标签中包含以便处理文件。如果您不想将文件发送到服务器,只需删除enctype="multipart/form-data"
.
你可以disable
输入,它不会被提交到服务器。
此外,您可以确保表单没有设置 enctype="multipart/form-data"。
回答我自己
表单中的提交按钮将提交文件。
不管服务器端代码。
有时用户可能会忘记“上传文件”或转到另一个选项,而上传程序处于活动状态并保存文件。
在这种情况下,我们应该清理或说“删除”上传器中的文件。
唯一的解决方案是使用 JavaScript(如果我错了,请告诉我)。
考虑到 html 上传器的特殊性,你无法控制“值”或“文本”
相反,我发现了以下两种方法:
http://gusiev.com/2009/04/clear-upload-file-input-field/
http://aspnetupload.com/Clear-HTML-File-Input.aspx
测试两者都工作得很好。