2016-05-23 44 views
0

如何在用户单击数据表中的搜索按钮而不是onchange或onkeyup文本框中实现搜索功能?目前我正在使用下面的代码进行搜索数据表搜索按钮上的onclick事件

jQuery('.asla-search-input').on('onkeyup change', function() { 
      var i =jQuery(this).attr('id'); // getting column index 
      var v =jQuery(this).val(); // getting search input value 
      dataTable.columns(i).search(v).draw(); 
     }); 

但是,当用户单击搜索按钮时,我需要此搜索。任何帮助将不胜感激。

+0

它的工作适合你? http://jsfiddle.net/84KNZ/63/ – CMedina

+0

当我在上面尝试时,我得到“TypeError:dataTable.fnFilter不是一个函数”这个错误。我正在使用DataTables 1.10.4 – user3408779

+0

如果你使用DataTables +10,你可以使用搜索功能,请参阅示例https://jsfiddle.net/cmedina/7kfmyw6x/54/ – CMedina

回答

0

你可以尝试在数据表中添加以下参数是这样的:

  var $oTable = $('#example').dataTable({ 
     "fnServerParams": function (aoData) { 
         aoData.push 
         (
          //search parameters 
          { "name": "id", "value": $('[id*="Id"]').val()},//Value of id 
          { "name": "DateFrom", "value": $('[id*="DateFrom"]').val()},//Value of DateFrom 
          { "name": "DateTo", "value": $('[id*="DateTo"]').val()},//Value of DateTo 
          { "name": "Status", "value": $('[id*="Status"]').val()}//Value of Status       
         ) 
        }, 
       });   
//OnClick of your button, redraw your Datatable 
     $('#btnSearch').on('click', function() {  
       $('#example').dataTable().fnDraw(); 
      });