Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery选择复选框时出现问题_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery选择复选框时出现问题

Javascript 使用jQuery选择复选框时出现问题,javascript,jquery,Javascript,Jquery,我在使用以下方法选择所有复选框时遇到一些问题 我用这个例子: $(document).ready(function(){ $('.check:button').toggle(function(){ $('input:checkbox').attr('checked','checked'); $(this).val('uncheck all') },function(){ $('input:checkbox').removeAttr(

我在使用以下方法选择所有复选框时遇到一些问题

我用这个例子:

$(document).ready(function(){
    $('.check:button').toggle(function(){
        $('input:checkbox').attr('checked','checked');
        $(this).val('uncheck all')
    },function(){
        $('input:checkbox').removeAttr('checked');
        $(this).val('check all');        
    })
})
HTML


复选框1
复选框2
复选框3
但是,在jQuery1.11中进入网页时,该按钮会消失


对此有什么解决办法?

使用
.prop
并将jquery代码修改为以下内容。尽管如此,请使用
单击
事件

 $(document).ready(function () {
    $('.check:button').click(function () {
        if ($(this).val() == "check all") {
            $('input:checkbox').prop('checked', true);
            $(this).val('uncheck all');
        } else {
            $('input:checkbox').prop('checked', false);
            $(this).val('check all');
        }

    });
});

演示:

使用
.prop
并将jquery代码修改为以下内容。尽管如此,请使用
单击
事件

 $(document).ready(function () {
    $('.check:button').click(function () {
        if ($(this).val() == "check all") {
            $('input:checkbox').prop('checked', true);
            $(this).val('uncheck all');
        } else {
            $('input:checkbox').prop('checked', false);
            $(this).val('check all');
        }

    });
});
演示:

此使用。。。因此,如果您使用jQuery>=1.9,您可能必须使用

$(document).ready(function () {
    $('.check:button').click(function () {
        $('input[type="checkbox"]').prop('checked', this.value == 'check all');
        $(this).val(function () {
            return this.value == 'check all' ? 'uncheck all' : 'check all';
        })
    })
})
演示:

此使用。。。因此,如果您使用jQuery>=1.9,您可能必须使用

$(document).ready(function () {
    $('.check:button').click(function () {
        $('input[type="checkbox"]').prop('checked', this.value == 'check all');
        $(this).val(function () {
            return this.value == 'check all' ? 'uncheck all' : 'check all';
        })
    })
})

演示:

仅供参考,切换事件已在jQuery 1.9中删除。看见相反,请尝试:

var checked = false;
$('.check:button').click(function () {
    checked = !checked;
    $('input:checkbox').prop('checked', checked);
    $(this).val(checked ? 'uncheck all' : 'check all')
});

仅供参考,切换事件已在jQuery 1.9中删除。看见相反,请尝试:

var checked = false;
$('.check:button').click(function () {
    checked = !checked;
    $('input:checkbox').prop('checked', checked);
    $(this).val(checked ? 'uncheck all' : 'check all')
});

试试这个:

 $('.check:button').click(function(){
   if($('input:checkbox:checked').length!=$('input:checkbox').length){
      $('input:checkbox').prop('checked',true);
      $(this).val('uncheck all');
   }else{
      $('input:checkbox').prop('checked',false);
      $(this).val('check all');                  
   }});

试试这个:

 $('.check:button').click(function(){
   if($('input:checkbox:checked').length!=$('input:checkbox').length){
      $('input:checkbox').prop('checked',true);
      $(this).val('uncheck all');
   }else{
      $('input:checkbox').prop('checked',false);
      $(this).val('check all');                  
   }});

仅供参考,切换事件已在jQuery 1.9中删除。看到它正在淡入淡出,因为您正在页面加载按钮上调用toggle…这将使它
显示:无页面加载。感谢@j08691FYI的提示,切换事件已在jQuery 1.9中删除。看到它正在淡入淡出,因为您正在页面加载按钮上调用toggle…这将使它
显示:无页面加载。感谢@j08691的提示