我有以下HTML结构:
<div class="mydiv">
<ul>
<li>Text 1</li>
<li>Text 2</li>
</ul>
<ul>
<li>Text 3</li>
<li>Text 4</li>
</ul>
<ul>
<li>Text 5</li>
</ul>
</div>
我想找到一个包含&#34; 4&#34;的字符串。并用&#34; four&#34;替换它。此li
的其他div
元素的其他字符串对我来说不再有趣。如果我只知道我应该搜索哪个div
而不知道哪个li
元素,我该怎么办?
答案 0 :(得分:0)
您可以使用:contains selector
$( "div li:contains('4')" ).text(function(_, val) {
return val.replace(/4/, "four")
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="mydiv">
<ul>
<li>Text 1</li>
<li>Text 2</li>
</ul>
<ul>
<li>Text 3</li>
<li>Text 4</li>
</ul>
<ul>
<li>Text 5</li>
</ul>
</div>
&#13;
答案 1 :(得分:0)
只需在父div的HTML上使用replace,然后使用替换的内容重置HTML:
$(".mydiv" ).html($(".mydiv" ).html().replace(/4/, "four"))
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="mydiv">
<ul>
<li>Text 1</li>
<li>Text 2</li>
</ul>
<ul>
<li>Text 3</li>
<li>Text 4</li>
</ul>
<ul>
<li>Text 5</li>
</ul>
</div>