包含某些文本但不包含某些img,请将css样式应用于该文本

时间:2011-08-06 09:55:00

标签: jquery

我如何在jquery中表达以下内容?

将黄色背景应用于包含“$”但不包含img src =“images / plus.gif”的表格中的每个td

我可以使用以下内容为包含部分执行此操作:

$("#SubscribersManageList tr:contains('$')").css("background", "yellow");

但它不是我想要的,我想要的是选择那些包含“$”但不包含图像src =“images / plus.gif”的tr,然后将黄色背景应用于那些tr。

任何?

3 个答案:

答案 0 :(得分:2)

您可以合并:not():has()选择器:

$("#SubscribersManageList td:contains('$'):not(:has(img[src='images/plus.gif']))")
    .css("background", "yellow");

您可以在this fiddle中进行测试。

答案 1 :(得分:1)

How is this for you

$('#SubscribersManageList tr:contains("$"):not(:has(img[src="images/plus.gif"]))').css("background-color", "yellow");

答案 2 :(得分:0)

使用.not()过滤掉这些内容。

$("#SubscribersManageList tr:contains('$')").not(:has('img[src|="images/plus.gif"]')).css("background", "yellow");

表达式

.not(:has(img[src|="images/plus.gif"]))

表示不要选择imgsrc

的任何子"images/plus.gif"