2014-12-13 25 views
0

網站:http://holyhearttheatre.com/運行一個jQuery活在每一個搜索KEYUP

擁有權上面的列表中的事件的實時搜索功能(向下滾動一點點)。

問題:如果拼寫錯誤,您需要清除搜索字段的文本字段以恢復。試着搜索一個Show,然後拼錯它。您需要清除整個輸入字段以重新開始搜索。

我該如何做到這一點,如果有人拼錯了這個詞,只要它在搜索字段中的內容匹配時就會搜索?

示例:有一個名爲「Happy Tree」的事件。搜索單詞「樹」的作品,但如果我搜索「樹」它將不會返回結果,我需要清除搜索字段以獲得結果。

這裏是我的最新嘗試:

var liveSearch = function(){ 
var $events = $('.events'); 
var $searchTerm = $('.search'); 

$($searchTerm).keyup(function() { 
    var filter = $($searchTerm).val(); 
    if (filter) { 
     var $found = $('.event-title:contains("' + filter + '")').closest('.events'); 
     $events.not($found).hide() 
    } else { 
     $events.show(); 
    } 
}) 

}

$(document).ready(function(){ 
    $('.live-search').on('keyup', function(){ 
     liveSearch(); 
    }); 
}); 

好像on.keyup將是什麼我要找的?

感謝您的任何建議!

回答

2

您可以隱藏與$events.not($found).hide()不匹配的事件,但忘記(重新)顯示匹配的事件(如果有隱藏的事件)。例如:

$found.show(); 
$events.not($found).hide() 
+0

您先生,有一個正確的答案。謝謝! – saltcod 2014-12-13 00:17:19