我发现文档中包含文本内的所有div:'thetext',我正在更改此文本:
$("div:contains('thetext'):not(:has(*))").each(function () {
$(this).text($(this).text() + " anotherTextAddedBefore");
})
是否可以将内部包含多个值? 我想找到包含的文本:'thetext',还有另一个值,例如:'thetext1','thetext2'等
我想在一个程序中完成它而不是更多:不想使用与我想要找到的文本一样多的程序。
谢谢!
答案 0 :(得分:10)
这样的选择器提供OR条件 -
$("div:contains('thetext'), div:contains('thetext1'), div:contains('thetext2')")
这样的选择器提供AND条件 -
$("div:contains('thetext'):contains('thetext1'):contains('thetext2')")
答案 1 :(得分:9)
您可以将多重选择器用作
之类的条件$("div:not(:has(*))").filter(":contains('thetext'), :contains('thetext2')").each(..)
答案 2 :(得分:3)
你可以有一个数组
var array = ['John', 'Martin'];
$(array).each(function () {
$("div:contains(" + this + ")").css("text-decoration", "underline");
});
答案 3 :(得分:2)
只需在上面的答案中添加一个点,如果你想选择没有特定值的元素,那么就可以使用
val psum = (sum(5)_)(23)
作为$("div:not(:contains('thetext'), :contains('thetext1'),:contains('thetext2'))")
条件
答案 4 :(得分:1)
您可以创建一个数组并循环它:
var containsVals = ["text1","text2"];
for(var i=0;i<containsVals.length;i++){
$("div:contains("+ containsVals[i] +"):not(:has(*))").each(function () {
$(this).text($(this).text() + " anotherTextAddedBefore");
});
}