我想用某些其他文本替換某些元素(包括兒童中的文本)中的所有文本。例如,HTML從元素中刪除文本而不刪除引用
<div id="myText">
This is some text.
This is some other text.
<p id="toHide">
This is even more text.
Click this text to hide it.
</p>
</div>
應該成爲
<div id="myText">
That is some text.
That is some other text.
<p id="toHide">
That is even more text.
Click That text to hide it.
</p>
</div>
從本質上講,我已經更換了所有的/this/gi
與"That"
。不過,我不能使用以下命令:
$("#myText").innerHTML = $("#myText").innerHTML.replace(/this/gi, "");
這是因爲我一直有很多引用到的myText
孩子。這些參考文獻將被刪除。我意識到,在簡單的情況下,我可以更新這些引用,但我有一個相當大的文件和許多引用(並且每次調用此函數時都會引起麻煩並且每引用都會更新引用)。
我還儲存了一些innerHTML
不可見的數據。例如,我使用
$("#toHide").test = "test";
寫入innerHTML
時會丟失。
如何更換div中的文本而不使用innerHTML
(最好不使用jquery)?
的jsfiddlehttp://jsfiddle.net/prankol57/ZEfM7/
@Oriol我使用'$'作爲一個快捷方式到'document.querySelector'(見的jsfiddle) – soktinpk