2012-02-13 76 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(); 
    } 
});