Remote-Attribut wird nicht ausgelöst, wenn das Feld leer ist

9

Ich verwende RemoteAttribute für ein bestimmtes Feld in meinem Formular. Der Zweck ist nicht wichtig. Wichtig ist, dass die Validierungsaktion ausgelöst werden muss, wenn das Feld geändert wird. Das funktioniert gut für mich, außer wenn das Feld leer ist.

Ich habe das gegoogelt, aber keine Ergebnisse gefunden. Weiß jemand, ob RemoteAttribute tatsächlich für leere Felder auslöst und wenn nicht, wie kann er erzwungen werden?

Alternativ kann der Remote-Validierer angepasst / modifiziert werden, um leere Werte auszulösen?

    
Paul Fleming 05.02.2013, 12:22
quelle

1 Antwort

2

Bei der jQuery-Validierung werden keine Regeln ausgeführt, wenn der Wert eines Elements leer ist. Wenn Sie eine minLength = 2-Regel haben, aber das Eingabefeld leer ist, wird die Regel nicht fehlschlagen. Nur wenn der Benutzer ein Zeichen eingibt, wird es fehlschlagen.

Dieselbe Idee gilt für einen Remote-Validator. Wenn der Wert leer ist, geht es nicht zum Server.

Ich glaube nicht, dass es eine Option im Plugin gibt, um dieses Verhalten zu ändern. Sie müssen eine benutzerdefinierte Async-Regel erstellen, um das erwartete Verhalten zu erhalten. Dies könnte ein wenig schwierig werden. Sind Sie sicher, dass es anders geht? Ist es sinnvoll, eine leere Zeichenfolge im Server zu validieren? Können Sie die erforderliche Regel hinzufügen?

    
epignosisx 07.02.2013, 19:53
quelle