加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

使用ajax加载一个jQuery DataTable

发布时间:2020-12-16 01:34:57 所属栏目:百科 来源:网络整理
导读:我正在尝试(和失败)使用内置的ajax源参数加载jQuery DataTable.但是,datatable可显示消息“Loading …”,其中应显示行. 这是我的datatable电话: $('#my-table').dataTable( {bFilter: false,bInfo: false,bJQueryUI: true,bPaginate: false,bStateSave: fal
我正在尝试(和失败)使用内置的ajax源参数加载jQuery DataTable.但是,datatable可显示消息“Loading …”,其中应显示行.

这是我的datatable电话:

$('#my-table').dataTable( 
             {bFilter: false,bInfo: false,bJQueryUI: true,bPaginate: false,bStateSave: false,bSort: false,aoColumns: [ {"sTitle" : "Date"},{"sTitle" : "Our Co."},{"sTitle" : "Their Co."},{"sTitle" : "Note"} ],sAjaxSource: "/contact/company_name/"} );

使用Chrome,我可以看到对/ contact / company_name /的调用正在发生,返回状态200,并具有以下数据:[[[Hello],[Goodbye],[Test1],[Test2]]](其中是我的测试数据).

我还可以看到dataTables.min.js返回错误Uncaught TypeError:无法读取未定义的属性’length’.

我假设我的返回数据格式不正确.有人可以提出解决方案吗?

根据 website
您的服务应返回以下格式的数据:
{
  "aaData": [
    [
      "row 1 col 1 data","row 1 col 2 data","row 1 col 3 data","row 1 col 4 data"
    ],[
      "row 2 col 1 data","row 2 col 2 data","row 2 col 3 data","row 2 col 4 data"
    ],[
      "row 3 col 1 data","row 3 col 2 data","row 3 col 3 data","row 3 col 4 data"
    ],[
      "row 4 col 1 data","row 4 col 2 data","row 4 col 3 data","row 4 col 4 data"
    ]
  ]
}

因此,将数组包装在一个对象中,将数组命名为aaData,然后重试.
或者您可以以任何您喜欢的方式命名,但是您需要在数据表初始化中添加sAjaxDataProp参数(例如,您将其命名为数据,如下所示:

$('#example').dataTable( {
    "bProcessing": true,"sAjaxSource": "/ajaxsource/callmydata","sAjaxDataProp": "data"
} );

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读