【发布时间】:2019-09-08 02:29:31
【问题描述】:
我有一个 DataTable 函数。 parentObjData 来自其他地方,应过滤此 DataTable 以仅包含 idea_id 等于 parentObjData 的记录。
function BuildExampleDataTable(parentObjData, tableCounter) {
oInnerTable = $("#example_" + tableCounter).DataTable({
autoWidth: true,
serverSide: true,
processing: true,
ajax:
{
url: "/platform/api/?format=datatables",
type: "get",
data: function (d) {
var searchData =
{
idea_id: parentObjData,
draw: d.draw,
length: d.length,
start: d.start,
order: d.order,
columns: d.columns,
orderbyfield: d.columns[d.order[0].column].data
};
d.sData = JSON.stringify(searchData);
return d.sData;
}
},
columns: [
{ data: 'idea_id', name: "idea_id.id"},
{ data: 'comment' },
],
});
}
/platform/api/?format=datatables 回复:
{"data":[{"idea_id":1,"comment":"test comment"},{"idea_id":1,"comment":"test comment again"},{"idea_id":2,"comment":"another test comment?"}],"recordsFiltered":3,"recordsTotal":3,"draw":1}
parentObjData 正确到达函数,但未过滤 DataTable(它显示所有三个记录)。如何更改 ajax 调用的 data 部分以过滤 DataTable?
【问题讨论】:
-
return来自 callback 函数没有什么意义。根据收到的数据构建您的数据表。 -
对,我可以使用
searchCols进行过滤,但我不希望idea_id出现在数据表中 -
来自
d.sData。 -
你能解释一下吗?
标签: javascript jquery json ajax datatables