2013-07-16 95 views
4

我想找到链接的URL匹配,然后做一些链接,如改变其颜色等jquery filter:只获得第一个匹配?

$("a").filter("[href*='id=10']").css({color: 'red'}); 

HTML,

<a href="http://website.come/folder/file.php?id=9&ajax=true">0</a> 
<a href="http://website.come/folder/file.php?id=10&ajax=true">1</a> 
<a href="http://website.come/folder/file.php?id=20&ajax=true">2</a> 
<a href="http://website.come/folder/file.php?id=30&ajax=true">3</a> 
<a href="http://website.come/folder/file.php?id=10&ajax=true">11</a> 

但我有两场比赛在链接列表中,我只想第一次匹配。我应该添加到jQuery代码?

jsfiddle

回答

4

试试这个:

$("a").filter("[href*='id=10']").first().css({color: 'red'}); 

如果你愿意,你也可以这样做:

$("a[href*='id=10']").first().css({color: 'red'}); 
+0

感谢您的答案! – laukok

+4

这不会得到每一个结果,然后返回第一个结果吗?如果你有一百万件事情,可能表现不好,但与两件事情没什么大不了的。 – Andrew

1

试试这个

$("a").filter("[href*='id=10']:first").css({color: 'red'}); 

Demo

+0

谢谢!我也使它与.first()http://jsfiddle.net/9f3yx/2/ – laukok

1

先用伪类:

$("a").filter("[href*='id=10']:first").css({color: 'red'});