使用JQuery提取元素中的文本

我想用JQuery提取Element中的Text

bla bla blaI want this text

我只想要没有强标签的文字“我想要这个文字”。 我怎样才能做到这一点?

试试这个…

  

这不需要从上下文中删除任何其他节点,并且只会在每次迭代时为您提供文本节点。

这样做(测试):

  var clone = $("#bla > span").clone(); clone.find('strong').remove(); alert(clone.text()); 

karim79方法的变化:

 $("span").clone().find("strong").remove().end().text(); 

或者如果您只是想要根文本而不知道其他标签是什么:

 $("span").clone().children().remove().end().text(); 

还有点长,但我认为这只是你希望的那么短。

 var textFromSpanWithoutStrongTag = $('div#bla > span').text(); 

更新:

 var textFromSpanWithoutTextFromStrongTag = $('div#bla > span').text().replace($('div#bla > span > strong').text(), ''); 

更新:

 var text = ''; $("div#bla > span").contents().each(function () { if(this.nodeType == 3) text = text + this.nodeValue; }); 

在FF3,IE8,O10b上测试:

 
bla bla bla I want this bla bla text bla bla bla