2016-05-07 5 views
0

Innerhalb einer Reihe von Kontrollkästchen (sagen wir 3 Optionen) Ich bin auf der Suche nach einem bestimmten Eingabeelement auf die Prüfung/Abwahl der zugehörigen Bezeichnung.Checkbox-Design - Targeting auf ein bestimmtes Eingabeelement

HAML

.choice-select-button 
    = check_box_tag("order[recipes][]", recipe.id, selected) 
    = label_tag do 
    = t(".step_4.tick_box_to_select") 

HTML Renders

<div class="choice-select-button"> 
    <input type="checkbox" name="order[recipes][]" id="order_recipes_" value="6" checked="checked"> 
    <label>Click to select</label> 
</div> 

Jede <input> gleichen ID zugeordnet ist, nämlich id="order_recipes_" so, wenn ich <label for="order_recipes_"> gesetzt geben und der Benutzer dann 'un-checks' die Etikett dann wird nur die erste Eingabe auf der Seite mit der id="order_recipes_" nach meinen CSS-Anweisungen gestylt.

Das einzige Unterscheidungsmerkmal, das ich für das choice-select-button.input sehen kann, ist sein Wert. Als solches habe ich versucht, dem Etikett eine for= zu geben, die auf inputs mit der id="order_recipes_ AND value="6" zielt. Erstens, ist dies machbar, und zweitens ist der beste Weg, so etwas zu tun oder gibt es eine viel einfachere Methode?

Vielen Dank im Voraus.

Antwort

0

Nach dem rrails doc:

check_box_tag (name, value = "1", geprüft = false, options = {}) Link- Erstellt ein Kontrollkästchen Formulareingabe-Tag.

Optionen

: deaktiviert - Wenn auf true gesetzt, wird nicht der Benutzer in der Lage sein, diesen Eingang zu verwenden.

Jeder andere Schlüssel erstellt Standard-HTML-Optionen für das Tag.

können Sie verschiedene IDs wie folgt erzeugen:

check_box_tag("order[recipes][]", recipe.id, selected, {id: recipe.id})