数据表在更改事件时重新加载

Datatables reload on change event

本文关键字:新加载 加载 事件 数据表      更新时间:2023-09-26

我有一个html下拉列表,它最初填充并显示数据表。数据来自一个json数组。一旦下拉菜单被更改,我会得到重新初始化错误,并在修复它时遇到问题。

我试过table.ajax.reload和table.fnReloadAjax();我断断续续地处理数据表,所以使用它们不是最好的。

这是代码:

function Population() {
var table = $('#Population').dataTable();
$("#quickStats").change(function () {
    var optionValue = $("#quickStats").val();
    console.log(optionValue);
    if (optionValue == 1) {
        $("#display").append('<table cellpadding="0" cellspacing="0" border="0" class="display" id="Population">' +            
        '<thead><tr><th>Demographic</th><th>Total</th></thead>'
         + '</table>');

    $('#Population').dataTable({
        "data": usPopulation,
        "bJQueryUI":true,
        "columns": [
            { "data": "Demographic" },
            { "data": "Total" }
        ],
    });
}
    table.ajax.reload();
});
}

在创建新的之前尝试销毁前一个:

$('#Population').dataTable().fnDestroy();

 $('#Population').dataTable({
        "data": usPopulation,
        "bJQueryUI":true,
        "columns": [
            { "data": "Demographic" },
            { "data": "Total" }
        ],
    });

或者这样做:

var table = $('#Population').dataTable({
            "data": usPopulation,
            "bJQueryUI":true,
            "columns": [
                { "data": "Demographic" },
                { "data": "Total" }
            ],
        });
table.draw();