Wie kann ich Parsley.js dazu bringen, 1 Fehler für eine Gruppe von Optionsfeldern oder Kontrollkästchen zu entfernen?

8

Es scheint, als ob PetersleyJS einen Fehler für jede Eingabe in einer Eingabegruppe ausgibt. Wie kann ich mit ParsleyJS 2.x prüfen, ob mindestens eine Checkbox in einer Gruppe aktiviert ist und nur einen Fehler in der gesamten Checkbox-Gruppe anzeigt wenn nicht?

    
jthomas 28.02.2014, 02:47
quelle

1 Antwort

23

Ok, nach etwas Versuch und Irrtum habe ich das funktioniert. Wenn Sie für mindestens ein Kontrollkästchen in einer Gruppe validieren und nur einen einzelnen Fehler für eine Gruppe von Kontrollkästchen oder Optionsfeldern anzeigen möchten, tun Sie Folgendes:

%Vor%

So wird es in seiner grundlegendsten Form gemacht. Damit dies funktioniert, muss das name-Attribut für jedes Element in der Gruppe denselben Wert haben. Wenn Sie aus irgendeinem Grund keine Kontrolle über das name-Attribut haben, können Sie es mit dem Attribut data-petitsy-multiple="some_group_name_here" wie folgt definieren:

%Vor%

Auch hier brauchen Sie das Attribut daten-petersilie-multiple="my_input_group" nicht für jede Eingabe, solange jedes Element in der Gruppe das gleiche Namensattribut hat. Ich werde jedoch weitermachen Fügen Sie es in die folgenden Beispiele ein.

Bei beiden obigen Beispielen wird unterhalb des letzten Kontrollkästchens ein Fehler angezeigt, der besagt: "Dieser Wert ist erforderlich." Wenn Sie die Fehlermeldung für die Gruppe ändern möchten, verwenden wir das Attribut "Data-petitsy-error-message" in der Eingabeaufforderung last wie folgt:

%Vor%

Und schließlich, wenn Sie ein wenig Phantasie und Kontrolle bekommen wollen, wo Ihre Fehlermeldung angezeigt wird, können Sie einen leeren Container mit einer Klasse oder einer ID erstellen, und fügen Sie die richtigen Petersilie-Attribute wieder dem last Kontrollkästchen oder Optionsfeld mit einem Verweis auf die leere Containerklasse oder ID.

Ganz oben habe ich ein leeres div mit einer Klasse von "my_error_container" hinzugefügt. Sehen Sie, wie ich es von der letzten Checkbox referenziere?

%Vor%

Ich hoffe, das hilft anderen Menschen.

Und denken Sie daran, dass Sie das Attribut daten-petersilie-multiple="my_input_group" nicht für jede Eingabe benötigen, solange jedes Element in der Gruppe das gleiche Namensattribut hat.

    
jthomas 28.02.2014, 03:20
quelle

Tags und Links