看不出我做错了什么?!!!必须是数字名称吗?
<fieldset>
<input type="checkbox" class="checkbox" name="187" />
<label for="187">Easily accessible</label><br />
<input type="checkbox" class="checkbox" name="311" />
<label for="311">WiFi Internet</label><br />
<input type="checkbox" class="checkbox" name="351" />
<label for="351">Child friendly</label><br />
<input type="checkbox" class="checkbox" name="352" />
<label for="352">Pets welcome</label><br />
<input type="checkbox" class="checkbox" name="353" />
<label for="353">Pet free zone</label><br />
</fieldset>
答案 0 :(得分:7)
我认为label的for属性应该指向一个元素id而不是它的名字(想想两个元素具有相同名称的情况)。 即 使用
<input type="checkbox" class="checkbox" id="187" />
<label for="187">Easily accessible</label><br />
答案 1 :(得分:2)
<input type="checkbox" class="checkbox" name="cb_187" id="cb_187" />
<label for="cb_187">Easily accessible</label>
name
和id
属性(使用相同的值填充它们)。答案 2 :(得分:2)
正如Jim指出的那样,for
上的label
属性应该指向id
上的input
属性。
或者,我更喜欢将input
和文本包装在标签内,如下所示:
<label><input type="checkbox" class="checkbox" name="353" /> Pet free zone</label><br />
这样,您就不必使用for
和id
进行捣乱。
答案 3 :(得分:0)
为什么不使用更简单的
<fieldset>
<label><input type="checkbox" class="checkbox" name="187" />
Easily accessible</label>
...
</fieldset>
更少代码,无需定义复选框ID。要从复选框中选中空格文本标签,只需为input
字段定义边距。同时显示:阻止标签,因此您甚至不需要<br>