jquery 数据表无法读取未定义的属性“fnGetData”

x4shl7ld  于 11个月前  发布在  jQuery
关注(0)|答案(2)|浏览(158)

我在我的项目中使用jQuery Datatables,现在一切都很好。但我在浏览器控制台中收到以下警告错误,我还没有找到任何关于为什么会出现这种情况的线索。但它并没有停止任何功能。

Uncaught TypeError: Cannot read property 'fnGetData' of undefined

字符串
这是错误是刚刚到来后,表绘制.
下面是我为我的数据表使用的参数。所以你可以得到一些关于这个警告错误的想法。

var initParams = {
        "bDestroy": true,
        "autoWidth": false,
        "bSortClasses": true,
        "iDisplayLength": 15,
        "aLengthMenu": [[10, 15, 30, 50, 100, -1], [10, 15, 30, 50, 100, "All"]],
        "sAjaxSource": defaultReq,
        "fnServerData": function ( sSource, aoData, fnCallback, oSettings ) {
            oSettings.jqXHR = $.ajax( {
               "dataType": 'json',
               "type": "GET",
               "url": sSource,
               "data": aoData,
               "success": fnCallback,
               "error": function (e) {
                   console.log(e.message);
               }
           });
        },
        "aoColumns": cols,
        "aoColumnDefs": colDef
    };


我正在触发一个aQuery(sAjaxSource)请求来获取表数据。

khbbv19g

khbbv19g1#

您的初始化代码是正确的。我怀疑您使用的是较新的DataTables 1.10.x库(通过存在autoWidth选项)。
当您尝试在DataTables的较新1.10.x版本的API示例上调用旧版本(1.9.x)方法fnGetData()时,可能会发生错误Cannot read property 'fnGetData' of undefined,例如:

var data = $('#example').DataTables().fnGetData();

字符串
在1.9.x和1.10.x版本中调用fnGetData()的正确方法是

var data = $('#example').dataTable().fnGetData();


请参阅DataTables 1.9 to 1.10 migration reference了解更多信息。

az31mfrm

az31mfrm2#

使用**rows().nodes()**代替fnGetData()。
像这样,

var data = $('#example').DataTables().rows().nodes();

字符串

相关问题