根据数据表中所有选中的复选框获取兄弟td值?

时间:2017-03-17 02:35:42

标签: javascript jquery html checkbox datatable

$('#save-board-assignees').click(function ()
{
    $('#board_assignee_table_wrapper input[type="checkbox"]:checked').each(function(i, td_e)
    {
        console.log('Found checked checkbox');
        var assignee_id = 0;
        var team_id = 0;
        var assignee_holder = [];

        assignee_id = $(this).closest('td').next().attr('id');
        assignee_name = $(this).closest('td').next().html();
        team_id = $(this).closest('td').next().next().attr('id');

        console.log('Assignee name: ' + assignee_name);
        console.log('Team id: ' + team_id);
        console.log('Assignee id: ' + assignee_id);

        assignee_holder.push(assignee_id, assignee_name);
        board_assignees.push(assignee_holder);
    });
}

此代码仅获取所选 页面 上已选中复选框的同级<td>(受理人姓名,团队ID,受理人ID)的值。它不会在DataTable的其他页面中选中已选中的复选框。

以下是表结构的示例代码段: https://jsfiddle.net/30u4knrs/

1 个答案:

答案 0 :(得分:0)

使用.$()https://datatables.net/reference/api/%24())访问所有表格元素(不仅仅是当前可见的表格元素):

var table = $('#example').DataTable();

table
   .$('input[type="checkbox"]:checked')
   .each(function(i, td_e) { ...