我正在使用Jquery Data-table并将Large unsorted对象数据绑定到datatable。我的代码如下:
var ExpenceDataTableElement = $('#ExpenceDataTable').DataTable({
data: Data,
pageLength: 10,
"bSort": false,
"autoWidth": false,
columns: [{
"className":"clsAction",
"data": "TimesheetUID",
"title": "Action",
"render": (data, type, row) => '<input class="checkbox" type="checkbox" />',
"width": "4%",
"visible":true
},
{
"className":"clsPeriodName",
"data": "PeriodName",
"title": "Timesheet Name",
"visible":true
},
{
"className":"clsTSPeriodStatus",
"data": "Open",
"title": "Timesheet Period <br> Status",
"render":function(data,type,row){ if(data == 1){return " Open"}else{return " close"}},
"width": "10%",
"visible":true
}
],
"oLanguage": {
"sEmptyTable": "No Records found."
}
});
该数据包含超过15,000条记录,其中包含“&#39; Open&#39;或者关闭&#39;。目前我正在使用for循环对数据进行排序并将其绑定到数据表。意味着如果数据有1.5万条记录,并且它包含7千个“开放”数据。标志记录,排序和排序需要很长时间。将数据绑定到Datatable。因此,有没有办法检查列中的条件:&#39;如果标志不是“打开”#39;然后继续下一次迭代??
答案 0 :(得分:0)
您可以使用filter方法首先过滤数组中“open”状态的对象。
someObject.columns.filter(x => x.data == 'open')
这将仅过滤掉标记为“打开”的那些。您可以将其缓存到变量中以进行进一步的工作。