gpt4 book ai didi

datatables - jQuery DataTable 过滤 - 如此困惑

转载 作者:行者123 更新时间:2023-12-01 07:55:04 27 4
gpt4 key购买 nike

我是在 https://datatables.net/ 上找到的 jQuery dataTables 插件的新手

我正在尝试为表实现自定义过滤器:

基本上,当我单击一个按钮时,自定义过滤功能将测试所有行的列 #1(数值)的值,如果列中的值 < 50 行,则该行保留,否则该行被隐藏.

这个概念应该很简单,但是我似乎找不到正确的 API 使用方法:

  • column.filter() 返回一个列值数组
  • column.search() 只能接受文本数据(不是函数)

  • 有什么API可以实现这个效果?

    有没有类似下面的内容?

    var api = $('#table').DataTable();

    api.column(1).data().somefilterfunction(function (val, ind) {
    return parseFloat(val) < 50;
    }).draw();

    最佳答案

    你在文档中看到过这篇文章-> https://datatables.net/examples/plug-ins/range_filtering.html ??

    您可以即时创建自定义过滤功能,由按钮触发:

    <button id="filter">filter < 50</button>

    脚本 :

    $("#filter").click(function() {
    $.fn.dataTable.ext.search.push(
    function( settings, data, dataIndex ) {
    return parseFloat(data[0])<50
    ? true
    : false
    }
    );
    table.draw();
    $.fn.dataTable.ext.search.pop();
    });

    演示 -> http://jsfiddle.net/dpwgqs2o/

    请注意,过滤器是在单击处理程序本身内部创建的,并在绘制表格后立即再次删除。这使得过滤器是临时的,即当用户单击列标题时,过滤器被清除。如果您想要永久过滤器,请将过滤器设为全局过滤器,不要将其删除。

    关于datatables - jQuery DataTable 过滤 - 如此困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29836857/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com