1

我的html是:

<div>
   Some text
   <span>label text</span>
</div>

查询:

??

我希望输出打印为 -

"Some text"

当我这样做时$("div").text(),我得到Some textLabel text
,当我这样做时$("div").html(),我得到Some text<span>Label text</span>

4

3 回答 3

2

试试这个请:

工作演示 http://jsfiddle.net/f8Vff/你也可以寻找innerHTMloutterHTML

jQuery.fn.justtext = function() {

    return $(this).clone()
            .children()
            .remove()
            .end()
            .text();

};
alert($('div').justtext());​
于 2012-07-18T09:01:30.863 回答
1

干得好。;)

var tmp = $('div').clone();
tmp.children().remove();

alert(tmp.text());

预览 - http://jsfiddle.net/Z3qaN/

于 2012-07-18T09:04:04.050 回答
1

这可以工作:

var txt = $('div').contents().filter(function() {
    return this.nodeType == 3;
});

alert(txt.text());
于 2012-07-18T09:05:42.083 回答