Datatables 响应数据表处理行单击

Datatables 响应数据表处理行单击,datatables,responsive,Datatables,Responsive,我使用的是一个响应数据表,我试图在其上处理对行的单击,因此如果单击该行,您将被重定向到新页面。这很好,但是如果表被折叠,我就不能显示子行,因为单击展开图标会激活行单击,我会被重定向 所以我想看看我是否可以检查图标是否被点击,但我不知道怎么做 我试着用 $("#jobListTable").hasClass('collapsed') 为了查看表是否折叠,但我仍然无法检查单击的单元格 简单的小提琴可以在这里找到: 但实际上我的代码是 $('#jobListTable tbody').on('

我使用的是一个响应数据表,我试图在其上处理对行的单击,因此如果单击该行,您将被重定向到新页面。这很好,但是如果表被折叠,我就不能显示子行,因为单击展开图标会激活行单击,我会被重定向

所以我想看看我是否可以检查图标是否被点击,但我不知道怎么做

我试着用

   $("#jobListTable").hasClass('collapsed')
为了查看表是否折叠,但我仍然无法检查单击的单元格

简单的小提琴可以在这里找到:

但实际上我的代码是

$('#jobListTable tbody').on('click', 'tr', function (e) {

    var data = oTable.row( this ).data();
     if ( $(this).hasClass('selected') ) {
        $(this).removeClass('selected');
    }
    else {
        oTable.$('tr.selected').removeClass('selected');
        $(this).addClass('selected');
    }

    var selectedTaskID = data.taskID;
    var selectedJobNumber = data.jobNumber;
    var selectedReqno = data.reqno;
    var selectedPriority = data.priority;
    var selectedCreatedBy = data.createdBy;
    var selectedEmployeeInitials = data.employeeInitials;
    var selectedShortDescription = data.shortDescription;
    var selectedLongDescription = data.longDescription;
    var selectedSourceReference = data.sourceReference;
    var selectedAktivitetstype = data.aktivitetstype;
    var selectedDueDatetime = data.dueDatetime;
    var selectedRecurrence = data.recurrence;
    var selectedStatus = data.status;
    var selectedStatusColor = encodeURIComponent(data.statusColor);
    var teamID = "";
    if (sessionStorage.getItem("teamID")) {
      teamID = "&teamID="+sessionStorage.getItem("teamID");        
    }

    document.location.href="jobinfo.php?taskID="+selectedTaskID+"&jobNumber="+selectedJobNumber+"&reqno="+selectedReqno+"&priority="+selectedPriority+"&createdBy="+selectedCreatedBy+"&employeeInitials="+selectedEmployeeInitials+"&shortDescription="+selectedShortDescription+"&longDescription="+selectedLongDescription+"&sourceReference="+selectedSourceReference+"&aktivitetstype="+selectedAktivitetstype+"&dueDatetime="+selectedDueDatetime+"&recurrence="+selectedRecurrence+"&status="+selectedStatus+"&statusColor="+selectedStatusColor+teamID;
} );

如果您需要更多信息,请告诉我。

如果任何人有类似问题:

我更改了代码,所以在每行添加了一个按钮

"columns":  [
                {
                  data: null, // can be null or undefined
                  defaultContent: '<button type="button" id="jobInfoBtn" class="btn btn-sm"><i class="fa fa-info-circle" aria-hidden="true"></i></button>',
                },

在这种数据表的当前状态下,您想要做的是不可能的。您正在尝试将事件绑定到td中的伪元素,在td中,事件只能绑定到其父元素。好的,谢谢,您是否有任何解决方法或其他方法,以同时具有响应表和单击行的能力?您需要搜索一种方法来更改带跨度的+和-按钮,您可以对其进行操作。如果你不能用你尝试过的内容发布一个新问题,你可以自己搜索并尝试。祝你好运
$('#jobListTable tbody').on('click', 'tr', function (e) {

     if ( $(this).hasClass('selected') ) {
        $(this).removeClass('selected');
    }
    else {
        oTable.$('tr.selected').removeClass('selected');
        $(this).addClass('selected');
    }
} );


$('#jobListTable tbody').on('click', 'button', function (e) {

    var data = oTable.row( $(this).parents('tr') ).data();

    var selectedTaskID = data.taskID;
    var selectedJobNumber = data.jobNumber;
    var selectedReqno = data.reqno;
    var selectedPriority = data.priority;
    var selectedCreatedBy = data.createdBy;
    var selectedEmployeeInitials = data.employeeInitials;
    var selectedShortDescription = data.shortDescription;
    var selectedLongDescription = data.longDescription;
    var selectedSourceReference = data.sourceReference;
    var selectedAktivitetstype = data.aktivitetstype;
    var selectedDueDatetime = data.dueDatetime;
    var selectedRecurrence = data.recurrence;
    var selectedStatus = data.status;
    var selectedStatusColor = encodeURIComponent(data.statusColor);
    var teamID = "";
    if (sessionStorage.getItem("teamID")) {
      teamID = "&teamID="+sessionStorage.getItem("teamID");        
    }

    document.location.href="jobinfo.php?taskID="+selectedTaskID+"&jobNumber="+selectedJobNumber+"&reqno="+selectedReqno+"&priority="+selectedPriority+"&createdBy="+selectedCreatedBy+"&employeeInitials="+selectedEmployeeInitials+"&shortDescription="+selectedShortDescription+"&longDescription="+selectedLongDescription+"&sourceReference="+selectedSourceReference+"&aktivitetstype="+selectedAktivitetstype+"&dueDatetime="+selectedDueDatetime+"&recurrence="+selectedRecurrence+"&status="+selectedStatus+"&statusColor="+selectedStatusColor+teamID;
} );