jquery – 为没有子文本的元素获取文本

比如我们有这个文件

<div id="mydiv"> some text here <div id="inner div"> text for inner div </div> </div> 

我需要得到#mydiv文本只有这样的代码:

 alert($('#mydiv').text()); // will alert "some text here" 

嘿,请尝试这个“: http : //jsfiddle.net/MtVxx/2/

在这里你的具体情况很好的链接: http : //viralpatel.net/blogs/jquery-get-text-element-without-child-element/ (这将只获得元素的文本)

希望这有助于, :)

 jQuery.fn.justtext = function() { return $(this).clone() .children() .remove() .end() .text(); }; alert($('#mydiv').justtext());​ 

目前接受的答案在性能方面非常糟糕,所以我觉得有必要写一个更轻量级的答案 :

 $.fn.mytext = function() { var str = ''; this.contents().each(function() { if (this.nodeType == 3) { str += this.textContent || this.innerText || ''; } }); return str; }; console.log($('#mydiv').mytext());​