Javascript 使用特定字符串对数据表行进行计数
如何统计具有特定文本的数据表行? 我尝试使用filter(),但不起作用Javascript 使用特定字符串对数据表行进行计数,javascript,jquery,datatables,Javascript,Jquery,Datatables,如何统计具有特定文本的数据表行? 我尝试使用filter(),但不起作用 $("#buttonAlert").on("click", function (event) { var count = $("#example1").DataTable.rows .column(4) .data() .filter(function (value, index) { return value = "OK" ? true : false; }).lengt
$("#buttonAlert").on("click", function (event) {
var count = $("#example1").DataTable.rows
.column(4)
.data()
.filter(function (value, index) {
return value = "OK" ? true : false;
}).length;
alert('Total OK is: ' + count);
});
错误如下所示:
ssar:391 Uncaught TypeError: Cannot read property 'column' of undefined
at HTMLButtonElement.<anonymous> (ssar:391)
at HTMLButtonElement.dispatch (jQuery-2.1.4.min.js:3)
at HTMLButtonElement.r.handle (jQuery-2.1.4.min.js:3)
ssar:391未捕获类型错误:无法读取未定义的属性“column”
在HTMLButtoneElement。(ssar:391)
在HTMLButtonElement.dispatch(jQuery-2.1.4.min.js:3)
位于HTMLButtonElement.r.handle(jQuery-2.1.4.min.js:3)
您需要使用和列()
与eq(4)
方法dataTable
类似
var count = 0;
$("#example1").DataTable.columns().eq(4).each( function ( index ) {
var column = $("#example1").DataTable.column( index );
var value = column.data();
if(value === 'OK'){
count++;
}
});
console.log('length'+count);
试试下面的一个,我正在根据列值相等性将行推送到
matchedRows
数组中
var matchedRows = [];
var table = $('#table_id').DataTable();
var data = table.data().toArray();
data.forEach(function(row) {
row.forEach(function (column) {
if (column == "Row 1 Data 1") {
matchedRows.push(row);
}
})
});
console.log(matchedRows.length);
嗨,安基特先生,我试过了,但还是得到了错误:未捕获类型错误:无法读取Null的属性'each',我已经在各自的代码中签入了。嗨,谢谢,但我不明白,我想这可能会更多simple@BayuSriHernogo对不起,我没听懂。这个解决方案对你有用吗?嗨,谢谢你的工作,但我认为这仍然不是标准的Datatable函数,但谢谢你我可以使用它method@BayuSriHernogo是的,没错:-)。但是很久以前我就使用了
Datatables
。我必须检查一次文档,如果我发现任何最小化的代码,我会更新我的答案