javascript - 一个关于InnerText的问题?
迷茫
迷茫 2017-07-05 10:57:20
0
1
953

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

例如:

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

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

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
三叔

先用document.getElementById('p').childNodes
获取到所有子元素,再遍历nodeType是3的节点(3是文本节点),最后取他的nodeValue值。
注意这样写时

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

childNodes会取到空的文本节点,要过滤。
还有innerText存在兼容性问题。

现在只能想到这种方法。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板