基本DataTable Ajax配置不起作用

时间:2016-01-17 20:28:42

标签: php jquery mysql ajax datatables

我试图在php和mysql中使用DataTables。我有一个ajax调用,它正在拉入数据:

[
    {
        "id": 3,
        "ptid":"blah",
        "last_name":"blah",
        "first_name":"blah",
        "priv_application":"E",
        "priv_document":"E",
        "priv_note":"E",
    }
]

我正在使用以下内容配置DataTable:

$('#listing').DataTable( {
    "paging": false,
    "searching": false,
    "select": true,
    ajax: {
            url: '{{ url("administration/admindata") }}',
            dataSrc: ''
     },
     columns: [
        { title: "ID" },
        { title: "PtID" },
        { title: "Last Name" },
        { title: "First Name" },
        { title: "Application" },
        { title: "Documents" },
        { title: "Notes" }
    ]
});

该表的HTML如下:

<table id="listing" class="display" width="100%"></table>

但是,即使此配置与此处给出的第一个示例完全相同,它也不想加载数据: https://datatables.net/manual/ajax

我收到以下错误: DataTables警告:table id = listing - 请求的未知参数&#39; 0&#39;对于第0行,第0列。有关此错误的详细信息,请参阅http://datatables.net/tn/4

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

使用对象数组作为数据源时,需要使用columns.data选项为每列指定数据源。

$('#listing').DataTable( {
    "paging": false,
    "searching": false,
    "select": true,
    "ajax": {
       "url": '{{ url("administration/admindata") }}',
       "dataSrc": ''
    },
    columns: [
        { data: "id", title: "ID" },
        { data: "ptid", title: "PtID" },
        { data: "last_name", title: "Last Name" },
        { data: "first_name", title: "First Name" },
        { data: "priv_application", title: "Application" },
        { data: "priv_adocument", title: "Documents" },
        { data: "priv_note", title: "Notes" }
   ]
});

答案 1 :(得分:0)

尝试这样的事情。

ajax": {
     type': 'POST',
     'url': "<?=action('TestController@postTestfunction')?>"
},

尝试使用没有刀片模板代码的ajax调用。 并确保你的路线写得像这样。

Route::controller('test', 'TestController');

还可以尝试更改您的控制器功能名称&#34; admindata&#34;到&#34; postAdmindata&#34;

如果你被困在任何地方,请让我知道。