我有一些如下所示的 HTML:
<span id="A">Text I'm interested in
<span id="B">Other crap I don't care about</span>
</span>
我希望获取跨度“A”的文本内容,不包括任何嵌套标签(即上例中跨度“B”的内容)。我正在尝试获取文本内容,而不是 HTML 内容。另外,在我的特定情况下,我知道在任何其他标签之前,跨度 A 内总会有一些文本,但我也对约束较少的解决方案感兴趣。
我考虑过的简单但笨重的方法就是执行 $("#A").html() 然后进行解析,直到遇到未转义的“
我相当确定没有内置的方法可以做到这一点 - 尽管您可以寻找插件,但它可能存在。其他人发布了 .text() 方法(但删除了该帖子),它将为您提供所有文本,减去标签,这意味着您将得到“我对其他我不关心的废话感兴趣的文本” - - 不是你想要的。
EDIT
好吧,我决定对此感兴趣,所以我花了一些时间。这是解决方案:)
copyOf = $('#A').clone();
copysKids = copyOf.children();
copysKids.remove();
alert(copyOf.text());
我们正在做的是克隆您试图从中获取文本的节点 - 我们不想对原始节点进行操作,因为这会更改页面。然后我们获取所有子节点的集合,并对它们进行攻击。剩余的文本是您要查找的文本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)