2012-02-13 85 views
1

我正在尋找一個能顯示大約20k行和一個文本框的頁面,當我在文本框中輸入時,它會將列表限制爲包含我輸入的字符串的列表。我沒有JavaScript背景,所以我正在尋找一個簡單的例子,我可以修改,以獲得這個工作,任何指針?javascript中的交互式grep?

回答

2

我做了幾個調整,以@Marc B的答案,但它仍然不是很高性能:

  • 顯示/隱藏項目使用類
  • 使用匹配而不是indexOf

下面是它的代碼:http://jsfiddle.net/gTBFN/3/

+0

哇,這其實是我正在尋找的東西!交互式使用看起來有點慢,所以也許我可以想出一種方法來在Enter中觸發而不是按鍵 – 2012-02-13 06:38:23

3

爲此,您必須將文本的每一行都包裝在適當的容器中,以便您可以隱藏/顯示單個行。

例如

<div class="hideables"> 
    <div>line 1</div> 
    <div>line 2</div> 
    ... 
</div> 

使用jQuery,你可以不喜歡

$('.hideables div').each(function() { 
    if ($(this).text().indexOf('yourstring') != -1) { 
     $(this).show(); 
    } else { 
     $(this).hide(); 
    } 
});