如果element包含单词X execute Y.

时间:2012-05-07 16:19:32

标签: jquery css

我正在尝试使用jquery来搜索其中一个元素是否包含特定单词,如果有,我想在该特定元素上执行一些jquery代码。

关于如何实现这一目标的任何想法?

示例:

if $('div').contains('Bird'){ 

      ****execute jquery*****

}

标记

<div>Dog x y z </div>
<div>Cat x y z </div>
<div>x y z Bird</div>
<div>x y z Fish</div>

我尝试了什么:

if ($("#producttabs2 #producttabs ul li a").has('iPhone App')) {
    $(this).css("border","1px solid red");
}

4 个答案:

答案 0 :(得分:4)

使用过滤器:

$('div').filter(function() {
    return this.innerHTML.indexOf(somestring) !== -1;
}).css("border","1px solid red");

答案 1 :(得分:3)

if ($('div').is((':contains("bird")'))
 // code here

您需要:contains selector

答案 2 :(得分:1)

简单的jQuery:

$('div').each(function() {
    if( $(this).text().indexOf('Bird') != -1) {
     //do something
    }
});

<强> jsFiddle example

答案 3 :(得分:0)

$('div').filter(function() {
  return this.innerHTML.match(/bird/ig);
}).css({
    border: '1px solid #f00'
});

DEMO