jQuery unaufdringliche Validierung in .NET MVC 3 - zeigt Erfolgshäkchen

8

Mit jQuery unaufdringliche Validierung in einem .NET MVC-Projekt und das scheint gut zu funktionieren. Ich versuche jetzt ein grünes Häkchen zu zeigen, wenn das Feld korrekt validiert wird (clientseitig und / oder remote).

Hier ist eine Beispielfelddeklaration:

%Vor%

Was ich tun möchte, ist eine Klasse "aktiv" zu "span.isaok" hinzufügen, die wiederum ein Häkchen für ein Hintergrundbild hat.

Ich habe versucht, highlight / unhighlight zu verwenden:

%Vor%

});

aber das zeigt ein grünes Häkchen für alle Felder, selbst wenn sie leer sind! (daher offensichtlich falsch)

Ich habe dann versucht, die "Erfolg" -Option zu verwenden, aber das scheint nie gefeuert zu werden.

Was vermisse ich?

Bearbeiten: So fand ich dieser Blogbeitrag und konnte die Erfolgsfunktion ie

anzapfen %Vor%

aber jetzt, wenn das Formular nicht gültig ist, zeigt es sowohl die Fehlermeldung als auch die gültige Markierung ...

an

und das letztere verschwindet, sobald ich irgendwo auf die Seite klicke.

    
seekay 21.09.2011, 01:06
quelle

3 Antworten

2

Dies scheint ein Problem zu sein, bei dem jquery.validate.unobtrusive die später in $.validator.setDefault hinzugefügten Einstellungen beeinträchtigt. Der Trick besteht darin, das unauffällige Skript nach den benutzerdefinierten Einstellungen zu laden. Sehen Sie hier und stimmen Sie ab, um es zu beheben. hier .

    
James Kolpack 04.03.2013 01:07
quelle
1

Falls jemand ein ähnliches Problem hat, habe ich das endlich mit der unminitierten Version von jquery.validate.unobtrusive.js und dem Hinzufügen meiner js zu den Methoden onError und onSuccess geschafft. Vorhandener Code wurde dabei belassen. Verwenden Sie die neu veraltete Version während der Bereitstellung.

Danke.

    
seekay 10.11.2011 17:46
quelle
0

Dies ist keine direkte Antwort auf Ihre Frage. Ich werde einen alternativen Ansatz dazu anbieten: TwitterBootstrapMVC .

Bei dieser Bibliothek müssen Sie nur für jede Eingabe schreiben:

%Vor%

Und das ist es. Sie erhalten eine Label-, Eingabe- und Validierungsnachricht - alles wird erledigt, ohne Javascript. Es erzeugt korrekte HTML-Markierung für Sie. Sie müssen nur sicherstellen, dass Sie die richtigen Standard CSS für Klassen wie .field-validation-error , .field-validation-valid ...

haben     
Dmitry 02.04.2013 21:57
quelle