我有这段代码。
var check = true;
$('#selectall').click(function () {
$("form input[type='checkbox']").attr ("checked", true);
if (check){
check = false;
$('#checktodos').attr("src", "check_off.png");
}
else {
$('#checktodos').attr("src", "check_on.png");
$("form input[type='checkbox']").attr ("checked", false);
}
});
当我点击ID =“selectall”的按钮时,所有复选框都被选中,图像按钮也会改变。然后我再次点击同一个按钮,取消选中所有复选框,图像再次更改为第一个。
但是我不能再这么做了,我第三次点击按钮,图像按钮没有改变,也没有选中复选框。我想无限次地这样做。
答案 0 :(得分:0)
尝试将以下内容添加到您的其他条件中:
check = true;
您将var check设置为false,但永远不会返回true。
更新:
JSFiddle示例:http://jsfiddle.net/4ZzUc/
您似乎使用的是jQuery版本> 1.5所以你需要使用.prop(“checked”,true);而不是.attr(“checked”,true);