我正在使用数据表,我得到的数据就像示例
中所示$('.data-table').dataTable({
"bProcessing": true,
"sAjaxSource": "/api/item/list",
"aoColumns": [
{ "mData": "Title" },
{ "mData": "Price" }
]
});
但是有一个问题,我需要把所有的对象都包装在aaData
中,以便这样工作
[HttpGet]
public dynamic List()
{
var items = _db.Items.OrderBy(x => x.ID);
var a = new {
aaData = items
};
return a;
}
这显然是因为我需要修改我的后端而不是返回普通的JSON。我已尝试设置aaData
而不是sAjaxSource
,但却出错了,但没有用。关于如何解决这个问题的任何想法?
答案 0 :(得分:4)
您可以告诉DataTables使用带有sAjaxDataProp
参数的其他属性名称,而不是属性aaData
。例如:
// Get data from { "data": { "inner": [...] } }
$(document).ready( function() {
var oTable = $('#example').dataTable( {
"sAjaxSource": "sources/data.txt",
"sAjaxDataProp": "data.inner"
} );
} );