Ich habe ein Dropdown (dropdown2), das benötigt wird IF da ist etwas drin, aber die Optionen werden durch Ajax aus einer anderen Dropdown-Auswahl (dropdown1) gesteuert. Manchmal ist dropdown2 leer und in diesem Fall kann ich es nicht verlangen. So kann ich das requiredFieldValidators
in Javascript deaktivieren, indem ich das ...
Dies funktioniert einwandfrei, aber der Server löst immer noch die requiredFieldValidator
-Logik aus. Kennt jemand, wie ich den Server zwingen kann, nicht zu validieren, wenn der Validator auf falscher Clientseite gesetzt ist?
Warum benutzen Sie nicht einfach einen clientseitigen Validator? Sie machen Ihre Arbeit dadurch viel schwieriger. Wenn Sie Zugriff über die Client-Seite haben, warum stören Sie es auf der Serverseite?
Die einzige andere Sache, die ich mir vorstellen kann, ist, ein verstecktes Feld zu erstellen und es über die Client-Seite einzustellen, und dann, wenn Sie ein Postback machen, diesen Wert zu überprüfen und den Validator zu deaktivieren / aktivieren.
Zum Beispiel danach:
JS:
%Vor%Dann in Ihrem Ladungsereignis:
%Vor%Sehen Sie sich diesen Post an, der Ihrem sehr ähnlich ist: ASP .NET - Wie verhindere ich eine nicht erforderliche Servervalidierung?
Require Validatoren werden im DOM als Span-Elemente eingefügt.
Wenn Sie JQUERY verwenden, rufen Sie das Element mit einem jQuery-Selektor ab und rufen Sie dann das DOM-Element aus dieser Auswahl ab, das Sie festgelegt haben.
Hier ist ein Beispiel:
Nehmen wir an, Sie haben einen Require-Validator id="MyReqValidator".
In Ihrer Javascript-Datei werden Sie tun:
%Vor%Alles in einer Codezeile
%Vor%Also habe ich JonHs Antwort nicht zur Arbeit gebracht, und der Rest ist nur Clientseite. Das ist meine Lösung:
Um einen RequiredFieldValidator auf der Client-Seite zu deaktivieren:
%Vor%Um einen RequiredFieldValidator auf der Serverseite zu deaktivieren, können Sie die Validate () Methode überschreiben das:
%Vor%Tags und Links asp.net ajax validation