【发布时间】:2012-10-02 05:00:59
【问题描述】:
我正在构建一个需要多个字段的搜索表单。单选按钮指示输入需要哪些字段,如下所示:
[ ] Field 1
[.] Field 2
Field 3
[ ] Field 4
在上述情况下,现在需要Field 2 和Field 3,因为选中了相关的单选按钮。为此,我实现了RequiredIf 验证属性,它可以正常工作。
我的问题是其他验证。在这种情况下,Field 1 也有一个最小长度验证。如果Field 1 有任何不遵守最小长度验证的值,则该表单现在无效并且无法提交。
我需要一种方法来禁用对不需要的字段的验证。(并且还能够在选中另一个单选按钮时将它们重新设置)。
由于客户要求,无法将字段设置为“disabled=disabled”,这解决了问题。
我尝试在上述字段中删除data-val 属性或将它们设置为false,然后再次解析我的表单,失败得很惨。
编辑:只是确保。 问题在于客户端验证。
【问题讨论】:
-
你能选择性地清除控制器中的modelState错误吗?
-
这是一个我正在实施的好主意。但我仍然希望客户端验证能够正常工作。
标签: c# javascript asp.net-mvc asp.net-mvc-3 unobtrusive-validation