jQuery-Validierung mindestens eine checkbox ausgewählt ist
Habe ich das folgende Stück html-code für Formular-Checkboxen
<div class="drinking col-xs-12">
<div class="col-xs-7 drinkingLeft">
<input type="checkbox" name="allwines" id="allwines" value="0" class="require-one col-xs-1 styled myClassA" value="0" data-label="All Wines" />
<input id='allwinesHidden' type='hidden' value='0' name='allwines'>
</div>
<div class="col-xs-5 drinkingLeft">
<input type="checkbox" name="beer" id="beer" value="0" class="require-one col-xs-1 styled myClassB" value="0" data-label="Beer" />
<input id='beerHidden' type='hidden' value='0' name='beer'>
</div>
<div class="clearix"></div>
<div class="col-xs-7 drinkingLeft">
<input type="checkbox" name="redwines" id="redwines" value="0" class="require-one col-xs-1 styled myClassC" value="0" data-label="Red Wines" />
<input id='redwinesHidden' type='hidden' value='0' name='redwines'>
</div>
<div class="col-xs-5 drinkingLeft">
<input type="checkbox" name="cider" id="cider" value="0" class="require-one col-xs-1 styled myClassD" value="0" data-label="Cider" />
<input id='ciderHidden' type='hidden' value='0' name='cider'>
</div>
<div class="clearix"></div>
<div class="col-xs-7 drinkingLeft">
<input type="checkbox" name="whitewines" id="whitewines" value="0" class="require-one col-xs-1 styled myClassE" value="0" data-label="White Wines" />
<input id='whitewinesHidden' type='hidden' value='0' name='whitewines'>
</div>
<div class="col-xs-5 drinkingLeft">
<input type="checkbox" name="spirits" id="spirits" value="0" class="require-one col-xs-1 styled myClassF" value="0" data-label="Spirits" />
<input id='spiritsHidden' type='hidden' value='0' name='spirits'>
</div>
<div class="clearix"></div>
<div class="col-xs-7 drinkingLeft">
<input type="checkbox" name="sparkling" id="sparkling" value="0" class="require-one col-xs-1 styled myClassG" value="0" data-label="Sparkling/Champagne" />
<input id='sparklingHidden' type='hidden' value='0' name='sparkling'>
</div>
<div class="col-xs-5 drinkingLeft">
<input type="checkbox" name="fortified" id="fortified" value="0" class="require-one col-xs-1 styled myClassH" value="0" data-label="Fortified" />
<input id='fortifiedHidden' type='hidden' value='0' name='fortified'>
</div>
<div id="error_msg3"></div>
<div class="clearix"></div>
</div>
</div>
Ich möchte sicherstellen, dass mindestens eines der Kontrollkästchen aktiviert ist.
Möchte ich, dass NICHT wie eine alert-box, aber die Nachricht brauchen zu zeigen, bis in das div-Fehler-msg3.
Bitte beachten Sie, dass die Eingänge müssen unterschiedliche Klassennamen und ids. Eine Inszenierung, der link dazu ist auf
Ich bin mit jQuery Validierung zur Validierung rest der form. Wird nett sein, um die Lösung durch jquery Validierung.
Vielen Dank im Voraus
- Ich habe den code in jsfiddle. jsfiddle.net/dHrvT/15
- Aktualisiert jsfiddle jsfiddle.net/dHrvT/17
- Wiederholen einfach nur wieder : * die Namen/ids der einzelnen Checkboxen unterschiedlich sind * Wenn der Benutzer die Schaltfläche zum senden klickt, brauche ich die folgenden: * Wenn keine checkbox angeklickt wird, dann wird die Fehlermeldung zu zeigen, genau wie die anderen Fehlermeldung * wenn eines der Kontrollkästchen aktiviert ist, wird die Fehlermeldung muss wieder verborgen werden* und wenn der Benutzer unclicks alle Fehlermeldung wieder, die Fehlermeldung muss wieder eingeblendet werden. Und Nein, ich kann nicht die Namen alle gleich. Es ist mit custom checkbox (ziemlich Links).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie ändern Sie die name-Attribute der Checkboxen und fügen Sie eine Regel für die es mit der
minlength
auf 1 gesetzt.Können Sie nach zeigen Sie die benutzerdefinierte Nachricht, und hängen Sie an
#error_msg3
mit :BEARBEITEN
EDIT 2
Habe ich aktualisiert, der Geige, jetzt die Meldung schaltet ordnungsgemäß, wenn Sie mindestens ein Kontrollkästchen aktiviert ist oder nicht.
Fiedel hier
Ist dies sehr einfach......
HTML
Zitat OP:
Wenn Sie möchten, verwenden Sie die jQuery Validate plugin, und alle Titel haben einen unterschiedlichen
name
, verwenden Sie einfach dierequire_from_group
- Methode, die Teil des dieadditional-methods.js
- Datei.Da Sie bereits eine gemeinsame Klasse, auf diese Rechte berufen
require-one
, ist es sogar noch einfacher.Jedoch, anstatt zu erklären, alle acht innerhalb
.validate()
verwenden, können Sie die.rules('add')
Methode innerhalb eines jQuery -.each()
zu erklären, Sie alle auf einmal.Dann kombinieren Sie alle acht Nachrichten in einer,, verwenden Sie die
groups
option...Arbeiten DEMO: http://jsfiddle.net/JVWu2/1/
Platzieren Sie Ihre Fehlermeldung in der
#error_msg3
Fehler Feld ist nicht anders, als er sich von Ihren anderen jQuery-Nachrichten überprüft.prettyCheckable
. IMO, das ist eine ganz andere Frage. Das jQuery Validate plugin ist nur auf der Suche auf Ihre eigentliche checkbox-Elemente und bis Sie herausfinden können, wie das Umschalten derjenigen, die diese niemals funktionieren..on('change')
Handler kombiniert werden könnten, in einem und sollten Sie nur aufrufen müssen.prettyCheckable()
einer Zeit. Es ist nur eine Frage der Verwendung der richtigen jQuery-Selektoren auswählen, um alle Ziel-Elemente auf einmal.Versuchen Sie es mit diesem
Durch Plugin -
HTML
Skript
Versuchen
hinzufügen dieser code wird
fiddle Demo
Gruppe zeigt Fehler in vor der ersten check-box nur
Gruppe entfernen, wenn Sie wollen, Fehler zu zeigen, vor allen check-Boxen
fiddle Demo
form
code.