JQuery checkbox check/uncheck

原文链接: https://www.mk2048.com/blog/blog.php?id=h00kii00ahhj&title=JQuery+checkbox+check%2Funcheck

  想通过JQuery来check或者uncheck页面上的checkbox控件,我们可能会想到用下面的代码:

$('#chk-all').on('click', function(){
    var checked = $(this).is(':checked');
    $("input[type='checkbox'][name='chk-att']").attr('checked', checked);
});

  chk-all是一个checkbox控件,我们想通过点击它来实现全选或取消全选的功能。在onclick事件中,首先通过$(this).is(':checked')来获取该checkbox当前的选中状态,然后将页面上所有name='chk-att'的checkbox控件选中或取消选中。这里使用的方法是修改checked属性的值,然而该方法并不总是奏效,有时你会看到元素的属性值确实被修改了,但是选中状态并未改变。尝试将attr()方法改成removeAttr()来实现取消选中,仍然不起作用!

  解决办法是使用prop()函数来替代上面代码中的attr()函数。将上面的代码修改如下:

$('#chk-all').on('click', function(){
    var checked = $(this).is(':checked');
    $("input[type='checkbox'][name='chk-att']").prop('checked', checked);
});

更多专业前端知识,请上 【猿2048】www.mk2048.com

猜你喜欢

转载自blog.csdn.net/QDY5945/article/details/102711892