【发布时间】:2013-01-01 11:50:46
【问题描述】:
这就是我所拥有的(此处使用 Twitter 引导程序)
#html
<ul id="my-categories">
<li>
<label class="checkbox">
<input checked="checked" name="supername[]" type="checkbox" value="43243">fdsfdsfds
</label>
</li>
<li>
<label class="checkbox">
<input checked="checked" name="supername[]" type="checkbox" value="21343">sadsadsadsadsd
</label>
</li>
<li class="fdsfds"></li>
<li>
<a href="#" id="my-categories-btn">Check/Uncheck all</a>
</li>
</ul>
# js file
$("#my-categories-btn").click(function(){
$("my-categories input[type=checkbox]").each(function(){
isChecked = $(this).attr('checked');
$(this).attr('checked', !isChecked);
});
})
它只是因为某种原因不起作用。
我该如何解决?
【问题讨论】:
-
仅供参考,使用
.prop()而不是.attr()用于检查、只读和禁用等内容。您还泄漏了一个全局变量,因为您忘记了isChecked前面的var -
谢谢。但我为什么要使用 prop()?
-
因为它返回一个布尔值而不是字符串值。见api.jquery.com/prop
-
另外,您是要切换当前的选择还是实际选中或取消选中所有复选框?
-
@Stefan,你是完全正确的。我想选中/取消选中所有。我只是关注它。
标签: jquery jquery-1.7