我有一个包含所有者名字的表。用户希望能够从病房的第一个字母对表格进行排序。
示例:
1)Saurabh Gujarani 2)Testsa
通过搜索" Sa"应该只列出 - Saurabh Gujarani
但在我目前的代码中,它显示了两者。
<script type="text/javascript">
$(document).ready(function () {
$('#custom_2').dataTable({
"aoColumnDefs": [
{ "bSearchable": false, "aTargets": [ 0,1,4,5,6,7,8 ] }
] } );
});
</script>
答案 0 :(得分:2)
您可以按如下方式修改DataTable的默认搜索功能。
//Declare table
var table = $('Table Selector').DataTable();
//on search box keyup
$('input[type = search]').on( 'keyup', function () {
//start check from first character
table.search( '^' + this.value, true, false).draw();
});
答案 1 :(得分:0)
我用它来让用户能够在元素周期表中搜索元素。
var searchString = document.getElementById("search").value; //The user input field
if (searchString !== "") {
var cols = document.querySelectorAll('#yourTableID td'), colslen = cols.length, i = -1;
while(++i < colslen){
if(cols[i].id.indexOf(searchString)>-1){
//Do something to the tds that match the searchstring (acces with "cols[i]")
} else {
//Hide the tds that does not match the searchstring (eg. cols[i].style.display = "none";)
我将搜索字符串与<td>
的ID匹配,但我认为您可以替换.id。在if语句中,如果要搜索td中的文本,则使用innerHTML或value。
希望这有帮助!