jQuery选择器,搜索多个单词

时间:2014-05-30 18:07:45

标签: jquery

我有一个像这样的选择器

var word = 'word';
$('#id tr:not(.class):has(*>a[href*="'+word+'"])').css('color','red')

这只适用于一个单词。

如何让它搜索多个单词(超过10个)?

2 个答案:

答案 0 :(得分:0)

您可以通过用逗号分隔选择器来包含任意数量的选择器。例如,如果您需要使用类hello选择两个段落并使用类world选择列表,则可以执行以下操作:

$('p.hello, ul.world, ol.world')

为了便于阅读,我宁愿有一个单词数组,循环遍历它们并为每个单词添加颜色。


注意:在你的情况下,区分服务器端的链接,在你想要匹配的链接上放一个类,然后使用基于类的选择器而不是属性选择器不是更简单吗?

答案 1 :(得分:0)

您可以使用逗号选择has()中的多个元素:

$('#id tr:not(.class):has(*>a[href*="word"], *>a[href*="another"])').css('color','red')

您可以创建一个单词数组并将它们映射到类似选择器的字符串,然后将其放在那里,以使您的选择器更好一些:

var varr = ['makan','another','final'],
    aQuery = $.map(varr, function(el){ return '*>a[href*="'+el+'"]'; }).join(",");

$('#id tr:not(.class):has('+aQuery+')').css('color','red')