javascript - jQuery Datatables - 从搜索中仅返回表中的前 5 行

标签 javascript jquery search datatables

我知道我可以通过以下方式过滤行:

var table = $('#example').DataTable();
//#column3_search is a <input type="text"> element
$('#column3_search').on( 'keyup', function () {
    table.columns( 3 ).search( this.value ).draw();
});

例如,我如何仅返回此搜索的前 3 个结果?

最佳答案

使用选项pageLength

$('#example').dataTable( {
  "pageLength": 3
} );

或者尝试在 .draw() 之前添加 page.len(3) (文档: https://datatables.net/reference/api/page.len() )

table.columns( 3 ).search( this.value ).page.len(3).draw();

具有自定义过滤的解决方案(如 https://www.datatables.net/examples/plug-ins/range_filtering.html )

DataTables provide an API method to add your own search functions, $.fn.dataTable.ext.search. This is an array of functions (push your own onto it) which will will be run at table draw time to see if a particular row should be included or not.

使用

$.fn.dataTable.ext.search.push(
    function(settings, searchData, index, rowData, counter) {
      var maxIndex = 4;
      if (counter <= maxIndex) {
        return (true);
      }
      return false;
    }
  );

此处我设置 maxIndex = 4 以仅包含搜索结果的前 5 行。

此处演示:https://jsfiddle.net/user2314737/nk0m2ekv/

关于javascript - jQuery Datatables - 从搜索中仅返回表中的前 5 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37086306/

相关文章:

javascript - 使用 .each() 在页面加载上绑定(bind)处理程序,并使用 jQuery .clone(true,true) 采用它们

javascript - 根据函数参数动态调用javascript函数

android - 在操作栏中添加搜索小部件时遇到问题

c++ - 在 vector 中找到对的最快方法,在迭代时将其删除

security - 使用 Solr 搜索安全/门控内容

javascript - CSS 伪元素 z-index inside bootstrap modal

javascript - 使用正则表达式匹配和更改 html 元素的颜色

Javascript 日期差异

javascript - 将 JSON 字符串作为参数发送到操作

javascript - Jquery 事件冒泡复选框