已选中行选择时选中/取消选中复选框

时间:2017-11-18 02:23:50

标签: javascript jquery checkbox datatable

当我选择了行表时,我的复选框不起作用(未选中)。

这是我的行选择

$('#mainTable tbody').on( 'click', 'tr', function () {
   $(this).toggleClass('selected');
   });

我已经包含了复选框处理程序,但没有运气。

"rowCallback": function(row, data, dataIndex){
         var rowId = data[0];

         if($.inArray(rowId, rows_selected) !== -1){
            $(row).find('input[type="checkbox"]').prop('checked', true);
            $(row).addClass('selected');
         }
      }

Reference

JSFiddle Demonstration

1 个答案:

答案 0 :(得分:2)

使用hasClass()检查当前所选状态,并使用该状态切换复选框

$('#mainTable tbody').on( 'click', 'tr', function () {
        var $row=$(this), 
            isSelected = $row.hasClass('selected')
        $row.toggleClass('selected')
            .find(':checkbox').prop('checked', !isSelected);
});

Demo