我可以引用输入:文本作为#id吗?

时间:2013-05-08 17:05:28

标签: jquery input filter

我正在寻找创建一个“过滤输入字段”,它消除了与输入不匹配的页面中的图块。

到目前为止,我有这个......

HTML -

<input name="filter" type="text" value="Find who you're looking for" />
<a href='#' id='b_submit'>Submit</a>

<article id='JohnS'>Content</article>
<article id='BobG'>Content</article>
<article id='SamL'>Content</article>
<article id='RonaldY'>Content</article>

脚本 -

$("#b_submit").click(function() {

    var filter_text = $('input:text').val();
    //this sets filter_text as the input value

    $('article:not(??not sue what to call here??)').fadeOut();
    //this is where I need help, I need to call the value as an #id to eliminate non-matching articles. 

    });

这样做的正确语法是什么?我是否过于复杂的简单过滤?救命? :D

2 个答案:

答案 0 :(得分:5)

我认为你在寻找:

$('article:not(#'+filter_text+')').fadeOut();

演示:http://jsfiddle.net/GKj66/

答案 1 :(得分:3)

试试这个:

$('article:not(:contains("' + filter_text + '"))').fadeOut();