如何保留为请求中的文件类型输入选择的文件?

时间:2012-09-30 14:08:18

标签: asp.net-mvc asp.net-mvc-4

我在某些视图中有input type="file"标记。当我提交表单时,如果存在验证问题并且我的控制器操作返回相同/视图模型但有验证错误,则清除为文件输入选择的文件。如何保留此选定文件?

2 个答案:

答案 0 :(得分:0)

您通常会使用input type="password"标记获得相同的行为。这是用于帮助保护用户免受恶意服务器侵害的浏览器中的安全措施,恶意服务器可能会尝试通过在文件上载字段中预先填充用户的私有敏感文件来访问它们。

如果文件无效,您为什么要保留它?

回复评论

如果是这种情况,您应该能够在客户端上处理其他字段验证,而无需执行完整的回发。这将保留用户的文件上载条目,因为在发现验证错误后服务器不会重新呈现页面。

答案 1 :(得分:0)

AFAIK出于安全原因这是不可能的。您无法设置文件输入字段的value属性,这就是您在回发后无法填充它的原因。