0

我正在使用 Javascript 库 DataTables。

我添加了一个按钮来打开对话框,以便过滤所有列。

到目前为止,我的代码是这样的:

<script>
$(document).ready(function() {
    var dt = $('#myTable').DataTable( {
 
        buttons:[
            {
                extend: 'searchPanes',
                config: {
                    cascadePanes: true,
                    viewTotal: true,
                orderable: false
                }
            }
        ],
        searchPanes: {
          viewTotal: true,
          orderable: false
        },
        dom: 'Bfrtip',
 
        select: {
            style:    'os',
            selector: 'td:first-child'
        },
        order: [[ 1, 'asc' ]]
    });
 
    dt.on('select.dt', () => {         
        dt.searchPanes.rebuildPane(0, true);
    });
 
    dt.on('deselect.dt', () => {
        dt.searchPanes.rebuildPane(0, true);
    });
});
</script>

我希望该按钮触发所有五列(标题除外)的过滤器,但我只获得其中两个的过滤器。

这是我的项目的 URL,您可以在其中看到我得到的内容。我做错什么了吗?

4

1 回答 1

0

使用该columns.searchPanes.show选项,我们可以强制考虑所有列。

这是给出答案的DataTable 论坛的链接。

添加到脚本的代码如下:

   columnDefs: [
        {
            searchPanes: {
                show: true
            },
            targets: [1,2,3,4,5]
        },
        {
            searchPanes: {
                show: false
            },
            targets: [0]
        }
    ],
于 2021-04-02T09:53:53.340 回答