首页 > js如何取<span>啊啊<a>拉拉</a><span>中<span>的文本不包括<a>标签的?

js如何取<span>啊啊<a>拉拉</a><span>中<span>的文本不包括<a>标签的?


<span class="tree-primary-items">啊啊<a class="add">添加</a></span>

js或jQuery如何取除了a标签文本之外的span中的文本


a= $("<div>out<a>in</a></div>");

[<div>​"out"​in​​</div>​]

a.text()

"outin"


  //ie8+
 document.getElementsByClassName('tree-primary-items')[0].innerHTML.split('<')[0];
  //jquery
 $('.tree-primary-items').html().split('<')[0];


element.innerText


var span = document.querySelector('.tree-primary-items');
var text = '';
for(i in span.childNodes){
    if(span.childNodes[i].nodeType == 3){
        text += span.childNodes[i].nodeValue;
    }
}
console.log(text);

老浏览器可以把querySelector换成getElementById()的写法,根据节点类型来取,只取文本节点的值,这样即使里面的文本间插入多个标签也能取到全部同级文本内容而不会包含标签和标签内部的文本


早上好!

document.querySelector('.tree-primary-items').innerHTML.replace(/<.+>/ig, '');

$('.tree-primary-items').html().replace(/<.+>/ig, '');


document.getElementById('id').firstChild

$(".tree-primary-items").text().replace($(".tree-primary-items a.add").text() , '');

var span = $(".tree-primary-items").find("a").remove();
alert($("span").text());
【热门文章】
【热门文章】