好的,这是场景:
向用户呈现包含文件输入的表单。
用户提交表单。
由于某种原因,表单未通过验证/验证。
向用户呈现的表单中突出显示了错误。
文件输入现在为空。
问题:
是否可以使用用户最初选择的文件的路径重新填充文件输入。 PHP 解决方案是理想的选择,但我也对 JavaScript 解决方案持开放态度。
我认为简短的回答是否定的。您无法重新填充文件上传字段。不过,您可以解决这个问题。
如果已选择文件并提交表单,则您已经收到该文件。您可以做的是保留对磁盘上文件的引用,并将其放入隐藏字段中,并向用户显示一条消息,表明您仍然上传了他们的文件,因此不需要替换/重新上传。当您的表单在没有文件的情况下再次提交时,您可以检查隐藏字段值并使用它来获取他们上次尝试上传的文件的本地副本。
另一种方法是通过 ajax 提交表单(使用 flash 或 iframe 方法上传文件),或者首先执行 ajax 调用来验证表单,然后仅在有效时正常提交(因此不会表单重新加载,不会丢失文件上传字段数据)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)