表格数据属性或操作方法
ajaxOption
选项基本继承了
jQuery.ajax
所有的选项,但是Datatables额外提供了
dataSrc属性来改变从服务器返回的数据给Datatables,或者是操作数据从一种形式转换成另一种形式(比如xml、json、yaml等)。
这么做是因为
ajaxOption
的 success 选项不能被改变-Datatables内部自己加载数据完成时使用。
作为一个字符串, dataSrc定义为从数据源获取什么样的数据对象加载给Datatables(比如ajax请求返回包含多个数据对象)
如果ajax返回的是一个数组,不是一个对象,将此字符串设置为空字符串即可
此外你也可以使用javascript对象符号来标示数据源里对象的层次
作为一个函数, dataSrc 可以操作从服务器返回的数据转化成另一种。
例如, 如果数据被分隔在多个数组里面,你需要合并到一个数组返回给Datatables处理后显示
非json格式的数据(xml,yaml等等),可以通过 dataSrc来转换成javascript数组交给Datatables显示
返回Datatables使用的数据数组
数据源中包含data属性(或者是 aaData,如果 data不存在,向后兼容 )
通过 Ajax,从一个文件获取 JSON 数据,使用 dataSrc属性把 data改为 tableData
(比如: { tableData: [ ...data... ] } )
$('#example').dataTable( {
"ajax": {
"url": "data.json",
"dataSrc": "tableData"
}
} );
通过 Ajax,从一个文件获取 JSON 数据,通过 dataSrc 设置为空字符串,不从数组对象里获取,而是从数组里获取
(比如: { [ ...data... ] } )
$('#example').dataTable( {
"ajax": {
"url": "data.json",
"dataSrc": ""
}
} );
操作从服务器返回的数据,给数据添加链接(提示,这里也可以使用
columns.renderOption
来实现,这里只是举个例子如何操作数据 )
$('#example').dataTable( {
"ajax": {
"url": "data.json",
"dataSrc": function ( json ) {
for ( var i=0, ien=json.data.length ; i<ien ; i++ ) {
json.data[i][0] = '<a href="/message/'+json.data[i][0]+'">View message</a>';
}
return json.data;
}
}
} );
下面的选项是直接相关的,也可能是您的应用程序的开发非常有用。
Translation from DataTables.net, with permission
ajax.dataSrc 1不定时一讲
ajax.dataSrc 2不定时一讲