So verwenden Sie benutzerdefinierte Validatoren von github.com/1000hz/bootstrap-validator

8

Aus der Dokumentation Ссылка :

  

Fügen Sie benutzerdefinierte Validatoren hinzu, die ausgeführt werden sollen. Validatoren sollten Funktionen sein, die das jQuery-Element als Argument erhalten und basierend auf der Gültigkeit der Eingabe einen truthy- oder falsy-Wert zurückgeben.

     

Objektstruktur ist: {foo: function($el) { return true || false } }

     

Das Hinzufügen des Validators zu einer Eingabe erfolgt genauso wie die anderen, data-foo="bar" .

     

Sie müssen auch Standardfehlermeldungen für benutzerdefinierte Prüfprogramme über die Option errors hinzufügen.

Ich verstehe nicht ganz, wie ich meinen eigenen benutzerdefinierten Validator definieren und wie ich ihn mit diesem Plugin verwenden kann.

Könnte mir jemand ein einfaches Beispiel oder einen Hinweis geben?

    
leo 20.04.2015, 22:20
quelle

3 Antworten

10

Sie müssen Ihr Plugin manuell aufrufen, da custom options nicht mit Datenattributen funktionieren:

%Vor%

benutze es dann so:

%Vor%

Vergessen Sie nicht, Fehlermeldungen hinzuzufügen, siehe Code

    
julesbou 20.04.2015, 22:33
quelle
5

Ich wollte die Antworten hier mit ein bisschen mehr Details ausarbeiten.

Ich habe versucht, dies zu tun, während ich die Daten-API benutze (indem ich data-toggle="validator" in das Formular-Tag setze). Entfernen Sie das aus meinem <form> -Tag und aktivieren Sie es mit Javascript, meine benutzerdefinierte Funktion funktioniert:

%Vor%

Ich musste dem Attribut data-odd auch einen Wert hinzufügen:

%Vor%

Interessant zu bemerken, dass, wenn ich dem <input> -Element Folgendes hinzufüge, es Vorrang vor der Fehlermeldung hat, die in javascript:

deklariert wurde %Vor%

Ich erhalte jedoch einen Fehler in der Konsole, wenn ich nur das Attribut "data-odd-error", aber keine in Javascript angegebene Fehlermeldung verwende. Daher müssen Sie eine Fehlermeldung in Javascript deklarieren.

    
Chris Brewer 14.01.2016 20:27
quelle
2

Fügen Sie zuerst Ihren eigenen benutzerdefinierten Validator hinzu, zum Beispiel:

%Vor%

Zweitens müssen Sie die Formulareingabe für den benutzerdefinierten Prüfer "binden", zum Beispiel:

%Vor%

Wenn Sie zu dieser Eingabe weitere Validierer hinzufügen möchten, müssen Sie den benutzerdefinierten Fehler zur Eingabe hinzufügen: data-unique-error="Dieses Gerät ist bereits vorhanden" zum Beispiel:

%Vor%

Der "Datenfehler" ist der standardmäßige Validiererfehler und er hat "nativen" Schlüssel aufgerufen. Der folgende Code zeigt, wie der Validierer die Fehlermeldungen gemäß dem Validatorschlüssel ausgibt:

%Vor%     
omrim 09.07.2015 11:38
quelle