有没有办法使用DataTable将表的列放在div中?

时间:2017-07-07 15:36:29

标签: javascript jquery html css datatables

所以我要做的就是让用户可以选择在生成表之后显示哪些表。我已经具有执行此操作的功能,在用户更改其选项后,它会销毁当前表,然后使用针对某些列的不同可见性设置重新初始化它。虽然这种方法很有效,但它看起来很慢并且看起来不那么漂亮,列只是消失了。我想如果我将列放在唯一的idd div中然后使用jquery编辑他们的css说delete_todo当用户取消选择它时它会更快更有吸引力,但我找不到把列放在div中的方法。

3 个答案:

答案 0 :(得分:0)

您不需要将列放在div中。

myFunction = function(){
  $('.first').css('display','none')
}

codepen

答案 1 :(得分:0)

可能是更好的解决方案,但您可以使用CSS nth-childhttps://www.w3schools.com/cssref/sel_nth-child.asp)属性和jQuery的.index()来标识要删除的列,并从每个表行中删除列

这样的东西可能会起作用(假设你有一个包含<th>元素的标题行):

$('table th').on("click", function() {
    var index = $(this).index() + 1;
    $.each('table tr', function() {
        $(this).find('td:nth-child(' + index + ')').hide();
    });
});

答案 2 :(得分:0)

回答我自己的问题,因为我设法找到一个名为column()的函数.visible可以按索引定位列并更改其可见性。它工作得很好,我无法实现其他人发布的解决方案。

对于后来进来的任何人来说,如果你能把列放在div中,据我所知,你不能,但你可能不需要做任何你正在做的事情。