2009-08-25 64 views
2

我在尋找一個不錯的快速實時搜索/過濾器。jquery livesearch?

有人用這個嗎? http://rikrikrik.com/jquery/quicksearch/#usage 另外,如何將它與大量數據的分頁或ajax結合使用?

代碼:

HTML:

<form method="get" autocomplete="off" action=""> 
<input type="text" value="" name="q" id="q"><br><br> 
</form> 
<ul id="posts"> 
<li>One</li> 
<li>Two</li> 
<li>Three</li> 
</ul> 

JS:

$('#q').liveUpdate('#posts'); 

以此爲插件:

jQuery.fn.liveUpdate = function(list){ 
    list = jQuery(list); 

    if (list.length) { 
    var rows = list.children('li'), 
     cache = rows.map(function(){ 
     return this.innerHTML.toLowerCase(); 
     }); 

    this 
     .keyup(filter).keyup() 
     .parents('form').submit(function(){ 
     return false; 
     }); 
    } 

    return this; 

    function filter(){ 
    var term = jQuery.trim(jQuery(this).val().toLowerCase()), scores = []; 

    if (!term) { 
     rows.show(); 
    } else { 
     rows.hide(); 

     cache.each(function(i){ 
     var score = this.score(term); 
     if (score > 0) { scores.push([score, i]); } 
     }); 

     jQuery.each(scores.sort(function(a, b){return b[0] - a[0];}), function(){ 
     jQuery(rows[ this[1] ]).show(); 
     }); 
    } 
    } 
}; 

回答

相關問題