2016-06-01 37 views

回答

4

嗨,我試圖找出這個問題的解決方案來看看,

var table = $('#example').DataTable(); 

// Apply the search in normal text input way 
table.columns().every(function() { 
    var that = this; 

    $('input', this.footer()).on('keyup change', function() { 
     if (that.search() !== this.value) { 
      that 
       .search(this.value) 
       .draw(); 
     } 
    }); 
}); 

使用選擇輸入的過濾器,用於列號2,它將替代您所選擇的列

table.column(2).every(function() { 

    var column = this; 
    var select = $('<select><option value=""></option></select>') 
     .appendTo($(column.footer()).empty()) 
     .on('change', function() { 
     var val = $.fn.dataTable.util.escapeRegex(
      $(this).val() 
     ); 

     column 
      .search(val ? '^' + val + '$' : '', true, false) 
      .draw(); 
     }); 

    column.data().unique().sort().each(function(d, j) { 
     select.append('<option value="' + d + '">' + d + '</option>') 
    }); 

}); 

還創建了一個小提示讓我知道如果符合您的要求。 https://jsfiddle.net/daddzt6n/2/

+0

只是想說這是非常有益的! – user1686342

+0

@ user1686342謝謝! ;) – BlackBurn027

相關問題