2011-05-26 92 views
6

我正在处理需要条件验证的MVC页面。ASP.net MVC条件验证

当用户从下拉列表中选择一个国家时,如果他们选择两个特定国家中的一个,则会显示一个包含两个必需文本框的框。我希望在这种情况下激活验证,并且如果他们选择了其他国家/地区,那么该框将被隐藏,验证将被停用。

当前在我没有构建的站点上,有一个单独的验证类(它继承自ValidationSet)处理该控制器的所有验证,并且使用ValidatePresence,ValidateDecimal和ValidateExpression等命令进行验证,所以我想坚持这种格式的一致性。例如

new ValidatePresence("countryId") {ErrorMessageFormat = "Please supply a country for delivery to"} 

任何人有任何想法?谢谢

+0

您正在使用哪个版本的mvc? – 2011-05-26 14:39:53

回答

1

我在这里道歉 - 我最初虽然ValidatePresence,ValidateDecimal等是MVC验证控件,但发现它们是自定义类。我现在已经修改了这些来做必要的事情。

无论如何感谢您的时间

3

是否有什么错误/只是有另一个验证程序,如“ValidateConditionalPresence”之类的,然后让它做你说的?即

return dropdown == false || (!string.IsNullOrWhitespace(box1) && !string.IsNullOrWhitespace(box2));