如何获得有孩子的链接的文本?

时间:2012-02-26 04:07:48

标签: jquery

我目前正在试图弄清楚如何获取有孩子的链接的文本。 我的HTML看起来非常像这样:

<a href="">
    The text I want to get
    <span> something I don't want to get </span>
</a>

我想只获得“我想要的文字”,而不是包含儿童的文字。
有没有简单的方法呢?

3 个答案:

答案 0 :(得分:4)

$("#mylink").clone()
        .children()
        .remove()
        .end()
        .text()

查找示例here

答案 1 :(得分:3)

您可以使用contents获取所有子项,包括文本节点。然后过滤以获取文本节点。

var $textNodes = $("a").contents()
                    .filter(function(){
                        return this.nodeType == 3
                    })

var text = $textNodes.text();

http://jsfiddle.net/Cnhxe/

答案 2 :(得分:0)

我不确定这个问题是否为儿童的标签和放置的所有可能性提供了足够的信息,但如果结构总是与提供的项目相同,您可以使用jQuery执行以下操作:

var linkText = $("a").text();
linkText = linkText.replace($("a span").text(), "");
alert(linkText);