Mit MVC2 habe ich ein einfaches ViewModel, das ein Bool-Feld enthält, das in der Ansicht als Kontrollkästchen gerendert wird. Ich möchte bestätigen, dass der Benutzer die Box überprüft hat. Das [Required] -Attribut auf meinem ViewModel scheint nicht den Trick zu machen. Ich glaube, dies liegt daran, dass das ungeprüfte Checkbox-Formularfeld während des POST nicht zurückgesendet wird und daher die Validierung nicht darauf ausgeführt wird.Wie würden Sie eine Checkbox in ASP.Net MVC 2 validieren?
Gibt es eine Standardmethode Checkbox zu handhaben „erforderlich“ Validierung in MVC2? Oder muss ich einen benutzerdefinierten Validator dafür schreiben? Ich vermute, dass der benutzerdefinierte Validator aus dem oben genannten Grund nicht ausgeführt wird. Störe ich in meinem Controller explizit darauf? Das scheint chaotisch ...
Jede Führung würde geschätzt.
Scott
EDIT FÜR CLARITY: Wie weiter unten in den Kommentaren darauf hingewiesen, ist dies ein „zu unseren Bedingungen einverstanden“ Art der Checkbox, und deshalb „nicht geprüft“ ist eine gültige Antwort, so dass ich mich wirklich für eine "ist überprüft" Validierung.
Ist dies eine Art der Checkbox „Ich nehme die Bedingungen der Lizenzvereinbarung akzeptieren“? Das [Required] -Attribut funktioniert nicht, da ein nicht abgehaktes Kontrollkästchen ein gültiger Wert ist (false). –
Ja, es ist genau das, und wenn sie es nicht überprüfen, zeigen wir dieselbe Ansicht mit einer Überprüfungsmeldung einfach wieder an, dass Sie die Bedingungen akzeptieren müssen, um fortzufahren. Ich sehe Ihren Punkt, dass falsches "gültig" ist. –
Die Antwort hat eine schöne Art und Weise tun, die mit den Client-Validatoren funktionieren: [http://stackoverflow.com/questions/4934032/mvc3-make-checkbox-required-via-jquery-validate](http:// stackoverflow.com/questions/4934032/mvc3-make-checkbox-required-via-jquery-validate) –