Jquery 将总行数传递给数据表
我有一个datatables实现,它通过Jquery 将总行数传递给数据表,jquery,datatable,Jquery,Datatable,我有一个datatables实现,它通过$\u服务器['PHP\u SELF']执行ajax请求。当页面加载时,我运行查询以获取所有记录。但是,第一个ajax调用将不受限制地再次执行此操作。我想知道是否有可能在初始ajax请求中传递总行数。这是我的datatables代码: var myTable = $('.datatable').DataTable({ "serverSide": true, "processing": true, "paging": true,
$\u服务器['PHP\u SELF']
执行ajax请求。当页面加载时,我运行查询以获取所有记录。但是,第一个ajax调用将不受限制地再次执行此操作。我想知道是否有可能在初始ajax请求中传递总行数。这是我的datatables代码:
var myTable = $('.datatable').DataTable({
"serverSide": true,
"processing": true,
"paging": true,
"searching": { "regex": true },
"lengthMenu": [ [10, 25, 50, 100, -1], [10, 25, 50, 100, "All"] ],
"pageLength": 10,
"ajax": {
"type": "POST",
"url": "<?= $_SERVER['PHP_SELF']; ?>",
"dataType": "json",
"contentType": 'application/json; charset=utf-8',
"data": function (data) {
// Grab form values containing user options
var form = {};
$.each($("form").serializeArray(), function (i, field) {
form[field.name] = field.value || "";
});
// Add options used by Datatables
var info = { "start": 0, "length": 10, "draw": 1 };
$.extend(form, info);
return JSON.stringify(form);
},
"complete": function(response) {
console.log(response);
}
}
});
var myTable=$('.datatable').datatable({
“服务器端”:正确,
“处理”:对,
“分页”:正确,
“搜索”:{“regex”:true},
“长度菜单”:[[10,25,50,100,-1],[10,25,50,100,“全部”],
“页面长度”:10,
“ajax”:{
“类型”:“职位”,
“url”:“,
“数据类型”:“json”,
“contentType”:“application/json;charset=utf-8”,
“数据”:功能(数据){
//获取包含用户选项的表单值
var form={};
$.each($(“form”).serializeArray(),函数(i,字段){
form[field.name]=field.value | |“”;
});
//添加Datatables使用的选项
var info={“开始”:0,“长度”:10,“绘制”:1};
$.extend(表格、信息);
返回JSON.stringify(form);
},
“完成”:功能(响应){
控制台日志(响应);
}
}
});
我已经找到了解决我的问题的方法,从术语上讲,这似乎是多个问题
recordsTotal
的值是错误的,因为它应该是我在ajax调用中想要检索的行数“contentType”:“应用程序/json;charset=utf-8',
似乎破坏了我的ajax请求$totalData
,然后使用$\u REQUEST
覆盖它使用此
“url”:“
您可能无法得到合理的响应。应该是一个单独的php。@Jeff我检查请求是否是ajax,并相应地返回相应的值。