html – 保留Spring MVC的价值

前端之家收集整理的这篇文章主要介绍了html – 保留Spring MVC的价值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个带有两个输入的表单:一个字符串,一个文件.
<form:form ...>
  <form:input type="text" ....>
  <form:input type="file" ....>
</form:form>

如果字符串输入上的验证失败,则控制器将路由回同一视图.发生这种情况时,将保留字符串字段,但选定的文件将丢失.

有没有办法在重新渲染视图时保留选定的文件

我认为答案是否定的 – 它是HTML文件输入的固有内容,而不是服务器端框架.询问是否有我遗漏的东西.

解决方法

确实无法保留文件输入值.就像它在所有浏览器中实现一样.据我所知,它与潜在的安全风险有关,但我从未深入过.

但是有可能实现类似的东西.这就是我们在项目中所做的:

>每个带有fileupload的表单都有一个UUID,只要输入无效,UUID就不会改变.
>我们使用FineUploader在这些编辑阶段异步上传文件,这些文件使用此uuid作为foldername上传文件
>我们维护隐藏的输入(文本)以及对当前上载的引用
>如果没有bindingresult错误我们处理方法中的文件并且oncomplete我们删除上传文件
>如果出现错误,我们保留uuid并维护输入字段,这样我们就不会丢失引用.

这现在稳定工作,并且作为一个很好的副作用控制器在某种程度上更容易,在我看来也更清晰,因为我们不再需要这些形式的多部分和另一个控制器只是处理上传.

编辑: – 你可能想要实现一个cronjob来清除废弃的上传

猜你在找的HTML相关文章