获取元素文本节点的方法网上有好几种,我对比了用其中最简单的一种
1、jquery获取
<div id="demo">只获取我<a href="">别管我</a></div>
var a = $ ("#demo").prop ('firstChild').nodeValue;
console.log(a);
1、js原生获取
<div id="demo">只获取我<a href="">别管我</a></div>
var a = document.getElementById('demo').firstChild.nodeValue;
console.log(a);
或者:
对于下面的html片段,
<div id="text_test">test text<a href="techbrood.com">techbrood co.</a></div>
获取节点纯文本:
var text = $('#text_test').text()
这个会得到“test text techbrood co.”,也就是会把当前元素的所有节点(包含子节点)的文本读取出来。
如果只想获取主节点的文本,方法复杂点:
var text = $("#text_test").contents().filter(function() {
return this.nodeType === 3;
}).text();
获取某子节点的文本:
var text = $("#text_test > a").first().contents().filter(function() {
return this.nodeType === 3;
}).text();