jQuery复选框选中/取消选中

这个问题在这里已经有了答案:

  • 设置“检查”的复选框与jQuery? 38个答案

  • 使用.prop()代替,如果我们用你的代码去比较,像这样:

    看看例子jsbin

      $("#news_list tr").click(function () {
        var ele = $(this).find(':checkbox');
        if ($(':checked').length) {
          ele.prop('checked', false);
          $(this).removeClass('admin_checked');
        } else {
          ele.prop('checked', true);
          $(this).addClass('admin_checked');
        }
     });
    

    变化:

  • input更改为:checkbox
  • 比较checked checkboxes the length

  • 使用prop()而不是attr()来设置checked的值。 还可以使用:checkbox在find方法中的:checkbox ,而不是input并且是特定的。

    现场演示

    $("#news_list tr").click(function() {
        var ele = $(this).find('input');
        if(ele.is(':checked')){
            ele.prop('checked', false);
            $(this).removeClass('admin_checked');
        }else{
            ele.prop('checked', true);
            $(this).addClass('admin_checked');
        }
    });
    

    使用道具而不是attr来检查属性

    从jQuery 1.6开始,对于尚未设置的属性,.attr()方法返回undefined。 要检索和更改表单元素的选中,选中或禁用状态等DOM属性,请使用.prop()方法


     $('mainCheckBox').click(function(){
        if($(this).prop('checked')){
            $('Id or Class of checkbox').prop('checked', true);
        }else{
            $('Id or Class of checkbox').prop('checked', false);
        }
    });
    
    链接地址: http://www.djcxy.com/p/12251.html

    上一篇: jQuery checkbox check/uncheck

    下一篇: How to make a checkbox checked with jQuery?