0

我正在使用数据表,我得到我的数据,如示例中所示

$('.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但出现错误,但没有奏效。关于如何解决这个问题的任何想法?

4

1 回答 1

4

代替 property aaData,您可以告诉 DataTables 使用带有sAjaxDataProp参数的另一个属性名称。例如:

// Get data from { "data": { "inner": [...] } }
$(document).ready( function() {
  var oTable = $('#example').dataTable( {
    "sAjaxSource": "sources/data.txt",
    "sAjaxDataProp": "data.inner"
  } );
} );
于 2012-09-03T16:38:42.373 回答