Frage

Ich habe einen Range -Validator in eine ASP.NET -Textfeldsteuerung in meine Webseite eingebracht. Wann immer sich der Bereich nicht trifft; Es wird die Fehlermeldung verstrichen,

Aber es geht zur nächsten Seite. Wie kann ich verhindern, dass es nach dem Klicken auf die Schaltfläche Klicken auf die nächste Seite wechselt, während der Bereich nicht erfüllt ist?

War es hilfreich?

Lösung

  • Stellen Sie sicher ValidationGroup Als Reichweite Validator. Dies gilt insbesondere dann, wenn Sie mehr als einen haben ValidationGroup definiert.

  • Stellen Sie sicher, dass die Immobilie CausesValidation ist auf der Taste nicht auf false eingestellt. Der Standardwert ist True Wenn die Eigenschaft also nicht in Ihrem ASPX oder Code dahinter deklariert ist, sollte die Schaltfläche Ihre Validierungssequenz abfeuern.

  • Wenn Sie den normalen Seitenfluss nicht verwenden (dh Ihre Schaltfläche hat die Eigenschaft UseSubmitBehvior einstellen False, oder in einigen Fällen, wenn Sie ASYCH AJAX -Rückrufe verwenden), möchten Sie Ihre Seite ändern, die den Code in einem ändern If blockieren, was überprüft werden Page.IsValid Vor dem Schießen.

  • Überprüfen Sie, ob die ControlToValidate wird auf die richtige Steuerung eingestellt und hat keinen Standardwert, der die Validierung übergibt.

Andere Tipps

Code?

Senden Sie direkt an die nächste Seite, anstatt auf dieselbe Seite zu posten und umzuleiten?

Umleiten Sie in page_load, welche tritt ein Vor Validierung?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top