选中/取消选中单击处理程序,仅在第一次切换

时间:2013-02-16 18:35:34

标签: jquery

我有这段代码。

        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”的按钮时,所有复选框都被选中,图像按钮也会改变。然后我再次点击同一个按钮,取消选中所有复选框,图像再次更改为第一个。

但是我不能再这么做了,我第三次点击按钮,图像按钮没有改变,也没有选中复选框。我想无限次地这样做。

1 个答案:

答案 0 :(得分:0)

尝试将以下内容添加到您的其他条件中:

check = true;

您将var check设置为false,但永远不会返回true。

更新:

JSFiddle示例:http://jsfiddle.net/4ZzUc/

您似乎使用的是jQuery版本> 1.5所以你需要使用.prop(“checked”,true);而不是.attr(“checked”,true);