2 Stimmen

Wie wendet man .input-validation-error auf den Kendo Editor in MVC4 an

Ich arbeite mit dem Kendo Editor in meiner MVC4-Anwendung und habe die modellbasierte Validierung mithilfe von erreicht

 $("form").data("validator").settings.ignore = ":hidden:not(#Text)";
 $.validator.setDefaults({ ignore: [] });

Kendo baut seinen Editor um das TextArea herum auf und markiert es als verstecktes Feld. Die Validierung funktioniert jetzt, aber die Klasse .input-validation-error wird nicht hinzugefügt, wenn die Validierung fehlschlägt. Kann jemand vorschlagen, wie ich das tun kann.

0voto

Der Punkt ist, dass die input-validation-error-Klasse auf das ursprüngliche versteckte Feld angewendet wird...nicht auf den Editor. Sie müssen das Valdierungsfehlereignis abfangen und manuell diese Klasse dem Editor hinzufügen.

Es gibt zwei Möglichkeiten, Validierungsereignisse abzufangen. Der einfachere Weg besteht darin, eine benutzerdefinierte showErrors-Funktion in den Optionen anzugeben, die Sie an die setDefaults-Methode übergeben. Die Dokumentation des Validierungs-Plugins erklärt, wie das geht.

Der andere Weg besteht darin, die element- und form-Methoden des Validator-Objektprototyps neu zu definieren...es ist nicht schwer, erfordert jedoch ein tieferes Verständnis des Validierungs-Plugins.

Ich empfehle, den ersten Ansatz zu verwenden und einen Haltepunkt in Ihrer showErrors-Funktion zu setzen, damit Sie sich mit dem Format der an sie übergebenen Argumente vertraut machen können. Vergessen Sie nicht, die Standard-showErrors-Funktion aufzurufen, nachdem Sie Ihre Anpassungen vorgenommen haben.

Vergessen Sie nicht, dass die Validierungsfehler auch gelöscht werden müssen. Jetzt, wenn das Plugin Ihre benutzerdefinierten Fehler nicht löscht (vielleicht... weil sie nicht mit einem Eingabefeld verbunden sind), müssen Sie die element- und form-Methoden auch überschreiben, weil die showErrors-Funktion nicht aufgerufen wird, wenn keine Fehler vorliegen, während die oben genannten Methoden in jedem Fall aufgerufen werden, so dass Sie dort Ihren Löschcode einsetzen können....

Mein Rat ist, sich zunächst darauf zu konzentrieren, den Fehler anzuzeigen, und nachdem Sie sich mit der Funktionsweise des Validierungs-Plugins vertraut gemacht haben, sich darauf zu konzentrieren, Ihre benutzerdefinierten Fehler zu löschen, wenn dies erforderlich ist (vielleicht werden sie automatisch vom Plugin gelöscht... bin mir nicht sicher, wie das Plugin seine Fehler löscht).

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