1

如何
使用 MVC 2 内置验证系统实现选择性客户端验证?
假设我的表单标题“你有孩子吗?”中有一个复选框。
如果选中下面的文本框,则它应该是必需
的(标题为 Number of children 的文本框)。

4

1 回答 1

0

一些可能会让您想到这里的选项。在多个发布操作的情况下(例如单击表单上的取消按钮不应触发验证),我已确保表单仅发布一个操作,其他任何内容本质上都是样式链接。在这种情况下,验证不会触发。

如果像您的情况一样,您有复杂的验证,我建议您创建一个自定义验证器并注册一个客户端适配器,例如

[RequiredIfHasChildren]

因此,您将编写一个自定义验证属性、一个自定义模型验证器和一些 JavaScript 代码来注册一个新的客户端验证器。这种方法过去对我有用,但对另一个模型属性的依赖可能有点问题。

希望这会有所帮助。

于 2010-04-09T20:13:06.763 回答