Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery DataTables-筛选记录集_Javascript_Jquery_Datatables - Fatal编程技术网

Javascript JQuery DataTables-筛选记录集

Javascript JQuery DataTables-筛选记录集,javascript,jquery,datatables,Javascript,Jquery,Datatables,我一直在尝试处理JQuery数据表中的过滤,但在解决所有问题时遇到了一些困难 我的代码如下: $(document).ready(function() { var table = $('#example').DataTable({ columnDefs: [{ targets: [2, 4, 5], visible: false }, { targets: 1,

我一直在尝试处理JQuery数据表中的过滤,但在解决所有问题时遇到了一些困难

我的代码如下:

$(document).ready(function() {
    var table = $('#example').DataTable({
        columnDefs: [{
            targets: [2, 4, 5],
            visible: false
        }, {
            targets: 1,
            width: '30%'
        }]
    });

    var filteredAge = table
        .column(3)
        .data()
        .filter(function(value, index) {
            return value > 40 ? true : false;
        });
    console.log(filteredAge);

    var filteredData = table
        .columns([0, 1, 2, 3, 4, 5])
        .data()
        .eq(3)
        .filter(function(value, index) {
            return value > 40 ? true : false;
        });
    console.log(filteredData);
});
正如你们将从下面看到的,单个列上的第一个过滤器工作正常,并按照预期将正确的值记录到控制台。但是,第二个筛选器向控制台返回“UncaughtTypeError:无法读取null的属性'filter'”错误。就我的一生而言,我无法找出原因

是我的语法错了还是我遗漏了一些重要的东西

提前谢谢


R

原因是
.eq(3)
。为什么会这样?我之所以有
.eq(3)
是因为,根据,它看起来是从多个列中筛选数据所必需的。我假设这是让API知道基于哪个列进行过滤的唯一方法。当我从Fiddle中的代码中删除
.eq(3)
时,它只返回一个空的记录集,在这个例子中不应该是这样的……在对我遇到的问题做了更多的研究并重新阅读了
eq()
的文档之后,我相信我已经找到了一个很好的解决方案来满足我的需要。请看一看更新后的我的解决方法。如果任何人发现这种过滤原始记录集和用新派生(过滤)数据重新绘制数据表的方法有任何问题,请务必让我知道。。。