2

我尝试根据不同的按钮单击重用具有不同数据量的 1 个表,我能够成功填充数据,但问题是,标题没有正确填充,我已经调试并看到正确数量的列传递到表中,但是为什么它仍然保留第一次点击的设计?第一次点击的第一个数据有 3 列,但在第二次点击中,它仍然保留相同的 3 列而不是 8 列?如何使标题正确填充?

我尝试销毁和重新创建,但是如果在创建表之前声明代码不能正常工作,知道吗?

 //if ($.fn.DataTable.fnIsDataTable($(selector)[0])) {
            //    $(selector).dataTable.fnClearTable();
            //    $(selector).dataTable.fnDraw();
            //}

var oDataTable = $(selector).dataTable({
                "sDom": _sDom,
                "sPaginationType": "bootstrap",
                "bDestroy": true,
                "bServerSide": true,
                "bFilter": true,
                "bStateSave": true,
                "bSort": tools,
                "bAutoWidth": false,
                "sAjaxSource": source,
                "fnServerParams": function (aoData) {
                    aoData.push({ "name": "sParams", "value": params });
                },
                "bProcessing": true,
                "oLanguage": {
                    "sLengthMenu": _displayLen
                },
                "aoColumns": cols
            });

第一个按钮点击 在此处输入图像描述

第二个按钮点击 在此处输入图像描述

4

1 回答 1

3

好的,找到了答案,在fndestroy之后,我仍然需要从表中删除表头,然后再重新创建一组新表头

$(selector).find('thead tr th').remove();
于 2013-09-27T03:19:08.770 回答