Ajax 在数据表中填充JSON对象
我正在使用DataTables 1.10.x,并希望使用JSON对象填充表中的数据Ajax 在数据表中填充JSON对象,ajax,json,datatables,Ajax,Json,Datatables,我正在使用DataTables 1.10.x,并希望使用JSON对象填充表中的数据 $(document).ready( function () { $('#diagtable').dataTable( { "ajax": '/api/v1/diag/1/', "columns": [ { "date": "date" }, { "diagnosis": "diagnosis" } ],
$(document).ready( function () {
$('#diagtable').dataTable( {
"ajax": '/api/v1/diag/1/',
"columns": [
{ "date": "date" },
{ "diagnosis": "diagnosis" }
],
dom: 'T<"clear">lfrtip',
} );
} );
我的AJAX调用返回以下JSON:
[
{
"date":"2010-03-20",
"diagnosis":"Test1"
},
{
"date":"2015-03-21",
"diagnosis":"Test2"
}
]
我看到正确的AJAX调用是由DataTables(HTTP 200)进行的,但是该表显示“正在加载…”
我试着使用下面的内容,但仍然没有数据填充到我的表中
"aoColumns": [
{ "mData": "date" },
{ "mData": "diagnosis" }
]
要使用的显示:
"columns": [
{ "data": "name" },
...
但我的JSON中没有这个“数据”或类似的内容。我也不能改变我的JSON
知道我做错了什么吗?返回的JSON格式的数据与DataTables 1.10.x预期的默认格式不同,请参见或示例 由于您提到无法更改JSON结构,因此解决方案是更改
dataSrc
属性,请参见下文
$(document).ready( function () {
$('#diagtable').dataTable( {
"ajax": {
"url": '/api/v1/diag/1/',
// Get JSON data from a plain array
// rather than an array in an object
"dataSrc": ""
},
"columns": [
{ "data": "date" },
{ "data": "diagnosis" }
],
dom: 'T<"clear">lfrtip',
} );
} );
$(文档).ready(函数(){
$('#diagtable')。数据表({
“ajax”:{
“url”:“/api/v1/diag/1/”,
//从普通数组获取JSON数据
//而不是对象中的数组
“dataSrc”:”
},
“栏目”:[
{“数据”:“日期”},
{“数据”:“诊断”}
],
dom:'Tlfrtip',
} );
} );
感谢您的提示,至少现在我的表中有两行(以前只是“加载…”),但它们是空的。我得到DataTables警告:table id=antetable-为行0请求的未知参数“0”。有关此错误的详细信息,请参阅http://datatables.net/tn/4
。我访问了那个页面-不知道为什么会抛出错误。这两个对象都是字符串表示形式。我还尝试将列名更改为(小写)date
和diagnosis
,但没有成功地将数据放入表中。很抱歉,我错过了columns.data
属性初始化代码中的另一个问题,并更新了我的答案。
$(document).ready( function () {
$('#diagtable').dataTable( {
"ajax": {
"url": '/api/v1/diag/1/',
// Get JSON data from a plain array
// rather than an array in an object
"dataSrc": ""
},
"columns": [
{ "data": "date" },
{ "data": "diagnosis" }
],
dom: 'T<"clear">lfrtip',
} );
} );