2016-07-20 7 views
0

Ich möchte Kontrollkästchen für jeden aufgeführten Artikel hinzufügen, ich benutze jede Schleife, um die Liste so zu machen, wenn ich das Kontrollkästchen für das bestimmte Listenelement und ich verschieben, um Einkaufswagen dann ich Ich möchte dieses Objekt als Wert für das Kontrollkästchen erhalten.Wie setze ich Checkbox-Wert gleich Javascript-Objekt

{{#each list}} 
    <input type="checkbox" name="list" > 
    <p>{{this.title}}</p> 
{{/each}} 
<button class="btn btn-primary" id="addToCart" >ADD TO CART</button> 

Nun, wenn ich auf die Schaltfläche klicken will ich es das Objekt zurück, für die das Kontrollkästchen aktiviert wurde (dh wenn Listenpunkt 1 überprüft wird dann auf der Schaltfläche klicken soll Listenelement 1 und so weiter zurückzukehren ...)

Hinweis: Ich möchte den Wert des Kontrollkästchens gleich dem Listenelementobjekt festlegen.

Antwort

1

Sie den Wert der Option zu einem gewissen eindeutigen Kennung des Elements in der Liste setzen müssen:

{{#each list}} 
    <input type="checkbox" name="list" value="{{this.id}}" id="{{'list' + this.id}}" /> 
    <label for="{{'list' + this.id}}">{{this.title}}</label> 
{{/each}} 

(ein Label anstelle des Absatzes Mit dem Benutzer erlaubt, auch auf dem Text klicken, um zu wählen oder das Kontrollkästchen deaktivieren, ohne Javascript erforderlich)

Dann könnten Sie den folgenden Code verwenden, in dem von der Taste ausgelöst Anruf, um die Liste aller geprüften Kontrollkästchen zu erhalten:

$.each($("input[name='list']:checked"), function() { 
    //push the items to list or whatever you want 
}); 

Sie könnten versuchen, das gesamte Objekt wie das Kontrollkästchen Wert zu setzen, aber ich habe das nicht versucht, und nicht wissen, die Auswirkungen:

<input type="checkbox" name="list" value="{{this}}" id="{{'list' + this.id}}" />