Javascript 如何在不干扰其他子节点的情况下替换HTML节点中的文本?
我的结构是:Javascript 如何在不干扰其他子节点的情况下替换HTML节点中的文本?,javascript,html,Javascript,Html,我的结构是: <th>0.12345<div id="someDiv"></div></th> 我需要用其他文本替换0.123456,而不删除div。 使用innerHTML和innerText将删除所有内容 我知道我可以使用substr先剪切innerHTML,然后重建完整内容,但有最简单的方法吗?您需要选择TextNode对象并重置其nodeValue。现在怎么做。您可以从div开始,因为您知道它的id。然后您可以获得具有previousSi
<th>0.12345<div id="someDiv"></div></th>
我需要用其他文本替换0.123456,而不删除div。
使用innerHTML和innerText将删除所有内容
我知道我可以使用substr先剪切innerHTML,然后重建完整内容,但有最简单的方法吗?您需要选择TextNode对象并重置其nodeValue。现在怎么做。您可以从div开始,因为您知道它的id。然后您可以获得具有previousSibling属性的textNode 大概是这样的: document.querySelector'someDiv'。previousSibling.nodeValue='TEST' 0.12345分区 var th=document.getElementsByTagName'th'[0]; th.childNodes[0]。textContent=foo;
0.12345somediv为了简单起见,我会将您需要的内容包装在一个span标记中,并直接对其进行操作 html:
将文本包装在一个文件夹中,这样您就可以直接使用它了?听起来不错!但如果我有div呢?如何在div之前插入我的文本?@splash27在这种情况下,您可以使用innerHTML,比如innerHTML=您的文本+innerHTML@JonP最好避免像这样使用innerHTML,因为它会删除所有事件处理程序。
<th>
<span class="myValue">0.12345</span>
<div id="someDiv">div</div>
</th>
$(".myValue").html("XXX");