【问题标题】:How to set columns via AJAX in Tabulator 4.1如何在 Tabulator 4.1 中通过 AJAX 设置列
【发布时间】:2019-01-02 15:22:23
【问题描述】:

我正在尝试创建一个包含将通过 AJAX 加载的列的制表符 4.1 表。最好不使用 jQuery,尽管如果它有很大的不同也可以使用它。我尝试了以下方法无济于事:

table.setColumns("ajaxr.php?act=GetTabuColumns&vals=data");

$("#display").tabulator("setColumns", "ajax.php?act=GetTabuColumns&vals=data");

我也尝试过使用纯 Javascript 和 jQuery ajax 请求进行单独的 ajax 请求。日期将作为 json 编码数组加载,但会引发以下错误。

Uncaught TypeError: t.forEach is not a function
at t.setColumns (tabulator.min.js:2)
at t.c.setColumns (tabulator.min.js:4)
at XMLHttpRequest.xmlhttp.onreadystatechange ((index):71)

我对 javascript 还很陌生,所以我可能犯了一个基本错误。这应该怎么做?

我的基本设置如下:

function datatablemaker(table){

    if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                var newcolumns = this.responseText;

                var table = new Tabulator("#display", {
            columns:[
            {title:'ID', field:'ID', sorter:'number'},...
            {title:'Create Time', field:'Create Time', sorter:'string'}
            ],
    });
table.setData("ajax.php?act=GetTabuData&vals=data");
table.setColumns(newcolumns);

            }
        };
        xmlhttp.open("GET",'ajax.php?act=GetTabuColumns&vals=data',true);
        xmlhttp.send();


};
document.getElementById("View").addEventListener("click", datatablemaker);

编辑:

如果我使用 JSON.parse,我可以让它工作,但我知道应该有更好的方法来做到这一点。即

var newcolumns = JSON.parse(this.responseText);

【问题讨论】:

    标签: tabulator


    【解决方案1】:

    目前还没有内置的方法可以做到这一点,这将在本月晚些时候的 4.2 版本中推出。

    同时发出 ajax 请求并将列数组传递到 setColumns 函数是最好的方法。

    【讨论】:

    • 谢谢!我暂时这样做了。惊人的图书馆!谢谢!
    猜你喜欢
    • 1970-01-01
    • 2012-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-27
    相关资源
    最近更新 更多