在 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"> </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"> </label>
</p>
{{/each}}
最好在标签元素的某处绑定文档id,因为您也可以使用相同的id来进行数据库操作。
我有以下代码`
{{# each item}}
<p class="center">
<input type="checkbox" checked="checked" id="basiccbox" name={{id}} />
<label for="basiccbox"> </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"> </label>
</p>
{{/each}}
最好在标签元素的某处绑定文档id,因为您也可以使用相同的id来进行数据库操作。