6 Stimmen

ASP.net MVC bedingte Validierung

Ich arbeite an einer MVC-Seite, die bedingte Validierung erfordert.

Wenn ein Benutzer ein Land aus einer Dropdown-Liste auswählt, wird, wenn er eines von zwei bestimmten Ländern auswählt, ein Feld mit zwei Textfeldern angezeigt, die erforderlich sind. Ich möchte, dass die Gültigkeitsprüfung in diesem Fall aktiviert wird, und wenn der Benutzer ein anderes Land auswählt, wird das Feld ausgeblendet und die Gültigkeitsprüfung wird deaktiviert.

Derzeit auf der Website, die ich nicht erstellen, gibt es eine separate Validierung Klasse (die von ValidationSet erbt), die alle Validierung für diesen Controller behandelt, und sie validieren mit Befehlen wie ValidatePresence, ValidateDecimal und ValidateExpression, so möchte ich zu diesem Format für Konsistenz bleiben. z.B..

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

Hat jemand eine Idee? Danke

3voto

Paul Punkte 34419

Gibt es etwas falsch w / nur mit einem anderen Validator wie, "ValidateConditionalPresence" oder dergleichen, dann mit es tun, was Sie gesagt haben? d.h..

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

1voto

e-on Punkte 1495

Meine Entschuldigungen hier - ich zunächst dachte, ValidatePresence, ValidateDecimal usw. waren Validierung Steuerelemente innerhalb MVC, aber entdeckt, dass Sie benutzerdefinierte Klassen sind. Ich habe jetzt diese geändert, um zu tun, was erforderlich war.

Trotzdem vielen Dank für Ihre Zeit

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X