【问题标题】:checked/unchecked checkbox when row selection already selected已选中行选择时选中/未选中复选框
【发布时间】:2017-11-18 02:23:50
【问题描述】:

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

这是我的行选择

$('#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

【问题讨论】:

  • “不起作用” 无法解释预期行为或特定问题
  • 当我选择了行表时,未选中复选框。你可以在小提琴中看到
  • 您是说单击行中的任意位置时要选中/取消选中复选框吗?
  • 是的,我尝试添加处理程序,但它使我的表格无法显示..

标签: javascript jquery checkbox datatable


【解决方案1】:

使用hasClass() 检查当前选中状态并使用它来切换复选框

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

Demo

【讨论】:

    猜你喜欢
    • 2018-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-29
    • 1970-01-01
    • 2013-02-10
    • 2014-06-20
    • 1970-01-01
    相关资源
    最近更新 更多