ASP.net MVC conditional validation
I'm working on an MVC page that requires conditional validation.
When a user selects a country from a dropdownlist, if they select one of two specific countries, then a box is displayed containing two text boxes which are required. I would like validation to activate in this case, and if they select any other country, then the box is hidden and validation will be deactivated.
Currently on the site, which I didn't build, there is a separate validation class (which inherits from ValidationSet) that handles all validation for that controller, and they validate with commands like ValidatePresence, ValidateDecimal, and ValidateExpression, so I would like to stick to that format for consistency. e.g.
new ValidatePresence("countryId") {ErrorMessageFormat =开发者_如何转开发 "Please supply a country for delivery to"}
Anyone got any ideas? Thanks
Is there anything wrong w/ just having another validator like, "ValidateConditionalPresence" or the like, then having it do what you said? i.e.
return dropdown == false || (!string.IsNullOrWhitespace(box1) && !string.IsNullOrWhitespace(box2));
My apologies here - I initially though ValidatePresence, ValidateDecimal etc were validation controls within MVC, but discovered that they are custom classes. I have now amended these to do what was required.
Thanks for your time anyway
精彩评论