文章出處
文章列表
想通過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); });
文章列表
全站熱搜