一个关于InnerText的问题?

我想用InnerText获得某个div节点的文本内容,但是这个节点内部有若干子节点,结果用InnerText会把它的子节点的文本也一起获取到,怎么解决?

例如:

<div id="div"><div>这不是我想要的<hr /></div>这才是我想要的</div>

我想获取到的是“这才是我想要的”这部分内容,何解?


慕娘9325324
浏览 519回答 1
1回答

守着星空守着你

先用document.getElementById('div').childNodes&nbsp;获取到所有子元素,再遍历nodeType是3的节点(3是文本节点),最后取他的nodeValue值。注意这样写时<div id="div">&nbsp; &nbsp; <div>这不是我想要的<hr /></div>这才是我想要的</div>childNodes会取到空的文本节点,要过滤。还有innerText存在兼容性问题。现在只能想到这种方法。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript