2017-03-17 81 views
0
$('#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的其他页面中选中复选框。根据数据表中所有选中的复选框获取同级td值?

这里的表结构的示例代码段: https://jsfiddle.net/30u4knrs/

+0

@KScandrett将这个好起来? https://jsfiddle.net/30u4knrs/1/ – herondale

+0

你在使用http://datatables.net/? –

+0

@KScandrett是的是的 – herondale

回答

0

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

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

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

没想到会这么简单。谢谢! – herondale

相关问题