DataTables选择&响应,儿童行。如何折叠子行?

时间:2017-02-09 13:28:23

标签: jquery datatables

如果我使用DataTable的{​​{1}}和responsive扩展程序,我会遇到令人困惑的行为:

  1. 单击一行,它将被选中并展开以显示子行。 行。
  2. 单击另一行,以便选择并展开此行。 还行。
  3. 再次点击第一行,它会变为已选中但已折叠。不行。
  4. 如何使行的行为与jQuery UI Accordion类似?意思是,在我做出新的选择后,将所有未选中的行的子项折叠起来?

    jsfiddle:https://jsfiddle.net/pm2gk9we/12/

1 个答案:

答案 0 :(得分:0)

这就是我想出的 - 我在行点击后隐藏了子行:

$("tr").unbind("click").click(function () {
 $("#table").DataTable().rows().every(function () {
   this.child((this.data())).hide();          
 });
});

我这样初始化responsive时工作正常(隐藏左边的图标并在每个单元格上展开行:

new $.fn.dataTable.Responsive(table, {
                        details: {
                            type: 'column',
                            target: 'tr'
                        }
                    });

解决方案小提琴:https://jsfiddle.net/pm2gk9we/13/