2016-03-23 7 views
1

オーナー名を持つテーブルがあります。ユーザーは、ワードの最初の文字からテーブルをソートできるようにしたい。データテーブルを使用します。最初の文字のみで検索したい

例:

1)Saurabh Gujarani 2)Testsa

"サ" べきリストだけを検索すること - Saurabh Gujarani

をしかし、それは両方を表示私の現在のコードインチ

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#custom_2').dataTable({ 
     "aoColumnDefs": [ 
    { "bSearchable": false, "aTargets": [ 0,1,4,5,6,7,8 ] } 
] }); 
}); 
</script> 

答えて

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(); 
}); 

https://jsfiddle.net/Prakash_Thete/b577yxa3/1/

+0

フィドルの更新作業のデモをご覧ください。 –

+0

このコードはとても役に立ちます私は私のコードに変更を加えましたあなたのレファレンスコードを使ってこのコードを追加しました { var oTable = $( '#custom_2')。dataTable(); $( 'input [type = text]')on( 'keyup'、function(){ var ap = $(this).val(); oTable.fnFilter( "^" + ap、null、true) 、true、false).draw();; }); } リンク:http://legacy.datatables.net/ref#fnFilter – saurabh

0

これを使用して、ユーザーが周期表の要素を検索できるようにしました。

var searchString = document.getElementById("search").value; //The user input field 
 
    if (searchString !== "") { 
 
    var cols = document.querySelectorAll('#yourTableID td'), colslen = cols.length, i = -1; 
 
\t 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ステートメント内で、innerHTMLまたはvalueを使用して、td内のテキストを検索したい場合。

希望すると便利です。