文章出處

  想通過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);
});

 


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()