如何我在一个元素得到的只是文本值
问题描述:
我的HTML是:如何我在一个元素得到的只是文本值
<div>
Some text
<span>label text</span>
</div>
的Jquery:
??
我想输出打印为 -
"Some text"
当我做$("div").text()
,我得到Some textLabel text
当我做$("div").html()
,我得到Some text<span>Label text</span>
答
试试这个PLZ:
工作演示http://jsfiddle.net/f8VFf/,你也可以寻找innerHTMl
和outterHTML
jQuery.fn.justtext = function() {
return $(this).clone()
.children()
.remove()
.end()
.text();
};
alert($('div').justtext());
+0
先生!那很完美。谢谢 – Ashwin 2012-07-18 09:04:05
+0
@MotaBOS大声笑howz生活bruv!很高兴它帮助':)' – 2012-07-18 09:04:59
答
在这里你去。 ;)
var tmp = $('div').clone();
tmp.children().remove();
alert(tmp.text());
答
这可能工作:
var txt = $('div').contents().filter(function() {
return this.nodeType == 3;
});
alert(txt.text());
不使用( '跨') – 2012-07-18 09:00:24
@Alex - 我不明白。不('span')将检查元素是否不是跨度。这将如何帮助。 – Ashwin 2012-07-18 09:02:08