jQuery DataTables 'OR' Search/ Filter

后端 未结 4 958
感情败类
感情败类 2020-12-09 05:25

I am using jQuery DataTables (http://www.datatables.net/) to display some tabular data. The search/ filter is a powerful feature. Although if multiple keywords are searched

4条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-09 06:12

    The same but triggering search on "every" key press instead of pressing enter:

    var dataTable = $('table').dataTable();
    var input = $(".dataTables_filter input");
    input.unbind('keyup search input').bind('keyup',
    function(e) {
        if (input.val().length > 0) {
            var keywords = input.val().trim().split(' '), filter = '';
            for (var i = 0; i < keywords.length; i++) {
                filter = (filter !== '') ? filter + '|' + keywords[i] : keywords[i];
            }
            dataTable.fnFilter(filter, null, true, false, true, true);
            //                                ^ Treat as regular expression or not                        
        } else if (input.val().length == 0) {
            dataTable.fnFilter(" ", null, true, false, true, true);
        }
    });
    
    
    
    
    
    
    
    OR SEARCH
    A B C D
    00010
    0500
    0000
    20010
    00910
    00990

    var dataTable = $('#your_datatable').dataTable();
    var input = $(".dataTables_filter input");
    input.unbind('keyup search input').bind('keyup',
    function(e) {
        if (input.val().length > 0) {
            var keywords = input.val().trim().split(' '), filter = '';
            for (var i = 0; i < keywords.length; i++) {
                filter = (filter !== '') ? filter + '|' + keywords[i] : keywords[i];
            }
            dataTable.fnFilter(filter, null, true, false, true, true);
            //                                ^ Treat as regular expression or not                        
        } else if (input.val().length == 0) {
            dataTable.fnFilter(" ", null, true, false, true, true);
        }
    });
    

提交回复
热议问题