例如,给定以下 HTML:
<a id="test" href="#">Text of A <span>(span text)</span></a>
然后jQuery('#test').text()
将返回'Text of A (span text)'
,有没有办法获得'Text of A '
(标签内的文本<a>
而不是它的后代<span>
标签)?
例如,给定以下 HTML:
<a id="test" href="#">Text of A <span>(span text)</span></a>
然后jQuery('#test').text()
将返回'Text of A (span text)'
,有没有办法获得'Text of A '
(标签内的文本<a>
而不是它的后代<span>
标签)?
这是一个可以解决您的问题的对话的链接: jQuery 不支持选择顶级节点文本?
这是一段摘录:
$("#hello").clone().children().remove().end().text();
通过制作一个简单的插件,这是一种可重用的方法:
插入
(function ($) {
$.fn.directText = function () {
var o = "";
this.each(function () {
var nodes = this.childNodes;
for (var i = 0; i <= nodes.length - 1; i++) {
if (nodes[i].nodeType == 3) o += nodes[i].nodeValue;
}
});
return $.trim(o);
};
})(jQuery);
用法
$("#myElement").directText();