zoukankan      html  css  js  c++  java
  • dataTable.NET的search box每輸入一個字母進行一次檢索的問題

    當使用dataTable.NET時,可以通到簡單的setting來添加一個search box進行全表格的檢索。

    $('#test-listing')
        .on('order.dt', function () {
            var table = $('#test-listing').dataTable();
            var currentSort = table.fnSettings().aaSorting;
            // do something here
        })
        .on('search.dt', function () {
            var value = $('.dataTables_filter input').val();
            // do something here
        })
        .on( 'init.dt', function () {
            // fired when DataTables has been completely loaded.
            firstTimePageLoad = false;
        } )
        .DataTable({
            paging: false,
            ordering: true,
            fixedHeader: true,
            "search": {
                "search": searchText
            },
            order: defaultSort,
        });

    當在search box輸入時,每輸入一次按鍵都會觸發 "seatch.dt"的function, 屏蔽的方法是將在search box上的keyup event進行unbind, 再bind自己要的function.,

    $('.dataTables_filter input').unbind();
    $('.dataTables_filter input').bind('keyup', function(e){
        if(e.keyCode == 13) {
            var table = $('#test-listing').dataTable()
            table.fnFilter(this.value);
            return false;
        }
    });

    上面的function會在按下enter鍵時,才進行fiter的動作。

    需要注意的是,在實際使用時,當按下enter鍵除了可以fiter外,還會觸發form中其他button的click動作,原因可能與browser有關,

    參考下面的link,

     https://github.com/facebook/react/issues/3907

    一個work around的解決方法,在其他button的click function中添加下面的code.

    if (event.detail == 0)
        return false;
  • 相关阅读:
    极致:互联网时代的产品设计
    赋能
    从历史看管理
    格调
    @Value注解没有起作用的梳理
    装系统------- 了解常用的启动方式以及如何进入bios
    装系统 ------ 使用微PE 做系统盘
    eclipse ------------- 安装maven ,配置setting文件
    Maven ------ 了解与安装
    sqlException 使用relace 替换单引号
  • 原文地址:https://www.cnblogs.com/sipher/p/11235507.html
Copyright © 2011-2022 走看看