jquery 查找文本并替换(全部)

Arr*_*iba 2 html javascript jquery

<div id="id1">

   apple

   ball

   dogsss

   dogsssdogsss

   dogsssdogsssdogsss

</div>
Run Code Online (Sandbox Code Playgroud)

如何将 ALL 更改dogsssdollsss使用 jquery?

这是一个代码,但如何确定元素?

$('#id1 how???').each(function() {
    var text = $(this).text();
    $(this).text(text.replace('dog', 'doll')); 
});
Run Code Online (Sandbox Code Playgroud)

这是类似的问题 http://stackoverflow.com/questions/8146648/jquery-find-text-and-replace

Tus*_*har 5

replace只会从字符串中删除第一次出现。regex与 replace 一起使用可删除所有出现的内容。使用全局标志,即gregex更换所有出现。

改变

$(this).text(text.replace('dog', 'doll')); 
Run Code Online (Sandbox Code Playgroud)

$(this).text(text.replace(/dog/g, 'doll')); 
Run Code Online (Sandbox Code Playgroud)

此外,您可以使用带有回调的text()来更新innerText元素。

演示

$(this).text(text.replace('dog', 'doll')); 
Run Code Online (Sandbox Code Playgroud)
$(this).text(text.replace(/dog/g, 'doll')); 
Run Code Online (Sandbox Code Playgroud)

  • 当答案也能解释事情时,这很好,而不仅仅是给出有效的代码。 (2认同)