使用Javascript高级搜索表

时间:2016-09-17 16:57:06

标签: javascript jquery

寻找使用Javascript过滤表格的方法。下面的代码段能够这样做,但仅适用于整个表格。

高级过滤器可以搜索null - 我想出的方式(但无法对其进行编码)是通过绑定标头,例如onResponse()作为标准。



index=1

<th>Index</th>
&#13;
$(document).ready(function() {
  $("#search").keyup(function () {
    var searchTerm = $("#search").val();
    var listItem = $('.results tbody').children('tr');
    var searchSplit = searchTerm.replace(/ /g, "'):containsi('")

    $.extend($.expr[':'], {'containsi': function(elem, i, match, array){
          return (elem.textContent || elem.innerText || '').toLowerCase().indexOf((match[3] || "").toLowerCase()) >= 0;
      }
    });
      
    $(".results tbody tr").not(":containsi('" + searchSplit + "')").each(function(e){
      $(this).attr('visible','false');
    });

    $(".results tbody tr:containsi('" + searchSplit + "')").each(function(e){
      $(this).attr('visible','true');
    });

    // Search Count item hits
    var jobCount = $('.results tbody tr[visible="true"]').length;
    $('.counter').text(jobCount + ' item');
    if(jobCount == '0') {$('.no-result').show();}
      else {$('.no-result').hide();}
  });

  // Parameter Passing
  var queryString = new Array();
  $(function() {
    if (queryString.length == 0) {
        if (window.location.search.split('?').length > 1) {
            var params = window.location.search.split('?')[1].split('&');
            for (var i = 0; i < params.length; i++) {
                var key = params[i].split('=')[0];
                var value = decodeURIComponent(params[i].split('=')[1]);
                queryString[key] = value;
            }
        }
    }
    
        
    if (queryString["id"] != null) {
         $('#search').val(queryString["id"])
    }
  });
});
&#13;
&#13;
&#13;

0 个答案:

没有答案