Javascript JS数据表插件:处理标准数据表格式以外的json格式
我是Datatables的新手,正在尝试解决这个问题。 我有一个以特定格式输出json的服务器(见下文)。我无法在服务器端更改它 **注意:我使用link模拟我的服务器响应只是为了检查 我有两个问题Javascript JS数据表插件:处理标准数据表格式以外的json格式,javascript,jquery,json,datatables,jquery-datatables,Javascript,Jquery,Json,Datatables,Jquery Datatables,我是Datatables的新手,正在尝试解决这个问题。 我有一个以特定格式输出json的服务器(见下文)。我无法在服务器端更改它 **注意:我使用link模拟我的服务器响应只是为了检查 我有两个问题 [ { "text": "Some text", "name": "somedata", "id": "89" }, { "text": "Some text", "name": "som
[
{
"text": "Some text",
"name": "somedata",
"id": "89"
},
{
"text": "Some text",
"name": "somedata",
"id": "2"
},
{
"text": "Some text",
"name": "somedata",
"id": "12"
}
]
aaData:
东西,所以我似乎无法初始化它aaData:
添加到json中只是为了检查,dataTable也无法计算总记录数。如何手动设置?因为我无法更改服务器的输出<table id="example" class="display" width="100%">
<thead>
<tr>
<th> </th>
<th>ID</th>
<th>Name</th>
<th>Text</th>
</tr>
</thead>
<tbody></tbody>
</table>
$(document).ready( function () {
var table = $('#example').dataTable({
"sAjaxSource": "http://www.json-generator.com/j/cftupHnpbC?indent=4",
"aoColumns": [{
"mData": "id",
"mRender": function (data, type, full) {
return '<input type="checkbox" name="chkids[]" value="' + data + '">';
}
}, {
"mData": "id"
}, {
"mData": "name"
}, {
"mData": "text"
}],
"bProcessing": true,
"bServerSide": true,
"sServerMethod": "GET",
"aoColumnDefs": [{
'bSortable': false,
'aTargets': [0]
}],
"fnDrawCallback": function (oSettings) {
console.log(this.fnSettings().fnRecordsTotal());
}
});
});
我想您可以自己请求JSON,从中生成一个对象并将其传递给您的数据表
var aaData;
var table;
$(document).ready( function () {
$.ajax({
url: 'http://www.json-generator.com/j/cftupHnpbC?indent=4'
}).done(function(data){
aaData = data;
table = $('#example').dataTable({
"aaData": aaData,
"aoColumns": [{
"mData": "id",
"mRender": function (data, type, full) {
return '<input type="checkbox" name="chkids[]" value="' + data + '">';
}
}, {
"mData": "id"
}, {
"mData": "name"
}, {
"mData": "text"
}],
"bProcessing": true,
"aoColumnDefs": [{
'bSortable': false,
'aTargets': [0]
}],
"fnDrawCallback": function (oSettings) {
console.log(this.fnSettings().fnRecordsTotal());
}
});
});
} );
var-aaData;
var表;
$(文档).ready(函数(){
$.ajax({
网址:'http://www.json-generator.com/j/cftupHnpbC?indent=4'
}).完成(功能(数据){
aa数据=数据;
table=$(“#示例”).dataTable({
“aaData”:aaData,
“aoColumns”:[{
“mData”:“id”,
“mRender”:功能(数据、类型、完整){
返回“”;
}
}, {
“mData”:“id”
}, {
“mData”:“名称”
}, {
“mData”:“文本”
}],
“bProcessing”:正确,
“aoColumnDefs”:[{
“bSortable”:错误,
“目标”:[0]
}],
“fnDrawCallback”:函数(oSettings){
console.log(this.fnSettings().fnRecordsTotal());
}
});
});
} );
我删除了bServerSide
——如果您不能更改服务器响应,我认为您无法利用它。还删除了sServerMethod