计算具有特定字符串的数据表行

时间:2018-08-06 06:33:15

标签: 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;
    }).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)

2 个答案:

答案 0 :(得分:0)

您需要将columns()eq(4)的{​​{1}}方法一起使用

dataTable

答案 1 :(得分:0)

尝试下面的方法,我基于列值相等将行推入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);