Javascript 数据表行正常,但未初始化?

Javascript 数据表行正常,但未初始化?,javascript,jquery,ajax,json,jquery-datatables,Javascript,Jquery,Ajax,Json,Jquery Datatables,我用数据表建立了我的网站。 我从java servlet后端通过其ajax服务获取数据——这工作正常,DOM一切看起来都不错。但是,即使我有所有的数据工作,似乎所有的DataTables功能都失败了 (所有字段都有效,我故意将空字段返回null) 我的jQuery数据表设置如下所示: function getUserTable() { var table = $('#example').DataTable({ "destroy": true, "processing": t

我用数据表建立了我的网站。
我从java servlet后端通过其ajax服务获取数据——这工作正常,DOM一切看起来都不错。但是,即使我有所有的数据工作,似乎所有的DataTables功能都失败了

(所有字段都有效,我故意将空字段返回null)
我的jQuery数据表设置如下所示:

function getUserTable() {
  var table = $('#example').DataTable({
    "destroy": true,
    "processing": true,
    "serverSide": true,
    "ajax": {
        "dataType": 'json',
        "url": "action=getAllUsers",
        "type": "POST",
        "dataSrc": "allUsers"
    },
    "columns": [
        {"data": "id"},
        {"data": "username"},
        {"data": "firstName"},
        {"data": "lastName"},
        {"data": "loggedIn"},
        {"data": "email"}
    ]
  });
}
因此,我将服务器端设置为true,因为我的后端在同一台服务器上-我似乎找不到任何关于此的教程,但当设置为服务器端时,内置搜索功能似乎不起作用?
还有,为什么表似乎还没有初始化?它显示的页面太多,并说“显示0个条目中的0到0个”。
我返回的json数据如下所示:

allUsers: [{email:null, firstName:null, id:1, lastName:null, loggedIn:false, username:mag},…]
Html表格结构:

<table id="example" class="display" cellspacing="0" width="100%">
                <thead>
                    <tr>
                        <th>Id</th>
                        <th>Brugernavn</th>
                        <th>Navn</th>
                        <th>Efternavn</th>
                        <th>Logged</th>
                        <th>Email</th>
                    </tr>
                </thead>
                <tfoot>
                    <tr>
                        <th>Id</th>
                        <th>Brugernavn</th>
                        <th>Navn</th>
                        <th>Efternavn</th>
                        <th>Logged</th>
                        <th>Email</th>
                    </tr>
                </tfoot>
            </table>

身份证件
布鲁格纳文
纳文
埃弗特纳文
记录
电子邮件
身份证件
布鲁格纳文
纳文
埃弗特纳文
记录
电子邮件

关于内置搜索功能,我记得,你是对的。它不适用于AJAX。您可以使用它,但不使用内置搜索。搜索必须在服务器端完成。使用搜索字段时,将使用包含搜索值的附加参数创建一个新的AJAX

要使分页工作,必须返回ajax响应中的总条目数,并在初始化数据表时设置分页配置

范例

Ajax响应:

{"iTotalRecords":"497","iTotalDisplayRecords":"497","aaData":[]}
var gridSettings = {
/* .... */
    "iDisplayStart": 0,
    "iDisplayLength": 20
};
$('#elt').dataTable(gridSettings);
分页配置:

{"iTotalRecords":"497","iTotalDisplayRecords":"497","aaData":[]}
var gridSettings = {
/* .... */
    "iDisplayStart": 0,
    "iDisplayLength": 20
};
$('#elt').dataTable(gridSettings);

我知道我现在将尝试返回记录数-idisplay配置是多少记录pr页面?是:)在我的情况下,我有497条记录,我希望每页20条。所以我将有25页。实际上,我在尝试在json对象中包含全部记录时遇到了一些问题。我使用FlexJson将java中的arraylist序列化为json-有关于如何包含的提示吗?:)我不知道FlexJson,抱歉。啊,它起作用了:)很好。现在,我只需要看看是否可以确定搜索查询:)