如何使用jquery获取父元素的文本?

前端之家收集整理的这篇文章主要介绍了如何使用jquery获取父元素的文本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含删除链接的div,点击它,我想要div标签的文本.怎么可能在 jquery?!
<div>sometext<a href="#">delete</a></div>

我想得到div标签’sometext’的文本,如果可能的话也得到div的id.
有任何想法吗?!

解决方法

做的问题:
$(this).parent().text();

是它将获得div中的所有文本(sometext AND delete).

我假设你只想要div中的文本而不是链接.

我在jsFiddle上打了一个例子:

http://jsfiddle.net/HK794/

理想情况下,您可能希望将文本换行,例如:

<div id="div1"><span>sometext</span><a href="#">delete</a></div>

然后你的JavaScript将是:

$("a").click(function(e){

    $div = $(this).parent("div");

    id = $div.attr("id");

    text = $div.find("span").text();

    alert( text  );

    e.preventDefault();
});

编辑

正如@DarthJDG所述,如果您不想更改标记,那么任何这些也可以起作用:

text = $div.get(0).childNodes[0].nodeValue;

//OR    
text = $div[0].childNodes[0].nodeValue;

//OR
text = $div.get(0).firstChild.nodeValue;

//OR
text = $div[0].firstChild.nodeValue;

//OR

//Gets the first text node
$div.contents().filter(function() {
    return this.nodeType == Node.TEXT_NODE;
}).text();

猜你在找的jQuery相关文章