DataTable搜索匹配数据行时报错filteredData未定义该如何解决
问题原因
你当前报的filteredData is not defined错误和你贴出的这段DataTable筛选代码没有直接关联,需要先排查当前代码作用域内其他位置是否有未声明就引用filteredData变量的逻辑。
代码优化方案
你贴出的筛选逻辑可以简化,不需要先遍历索引再匹配,直接使用DataTable内置的行筛选方法即可,代码如下:
var field13a = field13.substring(0, 4); // 直接筛选第一列值匹配field13a的所有行,返回结果数组 var filteredRows = locTable.rows(function (idx, data) { return data[0] === field13a; }).data().toArray(); console.log(filteredRows);
如果你的业务逻辑中确实需要用到filteredData变量,在上述代码后补充声明即可:
var filteredData = filteredRows;
验证项
确认以下前置条件避免衍生报错:
locTable是DataTable初始化时返回的实例对象,不是表格原生DOM节点field13变量已提前声明且值为合法字符串
内容的提问来源于stack exchange,提问作者tj26
相关产品推荐
相关产品推荐

