2016-05-17 70 views
1

我有一個JS文件來搜索一張桌子。它工作正常,並在搜索時在頁面上顯示結果。PHP和jQuery在桌面上進行實時搜索問題

的Javascript:

function Search() 
{ 
var $rows = $('#table tr'); 
$('#search').keyup(function() { 

var val = '^(?=.*\\b' + $.trim($(this).val()).split(/\s+/).join('\\b)(?=.*\\b') + ').*$', 
    reg = RegExp(val, 'i'), 
    text; 

$rows.show().filter(function() { 
    text = $(this).text().replace(/\s+/g, ' '); 
    return !reg.test(text); 
}).hide(); 
}); 
} 

HTML

<table class="table" id="table"> 
    <input type="text" id="search" placeholder="Type to search" onkeyup="Search();"> 
    <tr> 
     <th>Naam</th> 
     <th>Personeelsnummer</th> 
     <th>Geblokkeerd niveau</th> 
     <th>Wachtwoord</th> 
     <th>Verwijderen</th> 
     <th>(De)blokkeren</th> 
    </tr> 
    <?php 
    while ($row = mysqli_fetch_array($result)) {?> 
    <tr> 
    <td><?php echo $row['P_Naam'];?></td> 
    <td><?php echo $row['P_ID'];?></td> 
    <td><?php echo $row['P_Blocked'];?></td> 

的代碼都與上表中的一些更多的按鈕。

問題是,當它返回搜索時表頭消失。我一直在試圖弄清楚問題是什麼,但似乎無法弄清楚。

回答

0

當您選擇

var $rows = $('#table tr'); 

還選擇那些標題:

<tr> 
    <th>Naam</th> 
    <th>Personeelsnummer</th> 
    <th>Geblokkeerd niveau</th> 
    <th>Wachtwoord</th> 
    <th>Verwijderen</th> 
    <th>(De)blokkeren</th> 
</tr> 

並刪除它們。

嘗試更改jQuery篩選器以跳過第一行。

+0

感謝您的快速輸入,但我不知道我會怎麼做..有沒有辦法可以排除這些標題? – Xianchu

+0

嘗試 - $('#table tr:not(:first)') –

+0

謝謝!它解決了! – Xianchu