在 blaze (Meteor) 中使用 {{#each)) 迭代复选框

Iterating a checkboxes using {{#each)) in blaze (Meteor)

我有以下代码`

{{# each item}}
    <p class="center">
     <input type="checkbox"  checked="checked" id="basiccbox" name={{id}} />
     <label for="basiccbox"> &nbsp;</label>
    </p>
{{/each}}

现在呈现多个复选框。但是,当我单击任何一个框时,只有第一个复选框会在 true 或 false 状态之间切换。发生这种情况是因为

for="basiccbox"

id="basiccbox"

即所有呈现的框都具有相同的 ID。我如何生成唯一 ID 或者如何处理这种情况。

`

通常你应该将 item._id 分配给复选框标签的 id。以下是解决您问题的代码。

{{# each item}}
    <p class="center">
       <input type="checkbox"  checked="checked" id={{_id}} name={{id}} />
       <label for="basiccbox"> &nbsp;</label>
    </p>
{{/each}}

最好在标签元素的某处绑定文档id,因为您也可以使用相同的id来进行数据库操作。