假设我有一个jQuery文本节点的选择器,我怎么能得到父节点?如何在jQuery中获取给定文本节点的最近父节点?
1
A
回答
4
$('selector_for_your_textnode').parent()
一个jQuery对象,或
$('selector_for_your_textnode').parent()[0]
为常规的DOM对象。
您也可以使用.closest('element_you_want')
以获得更大的灵活性。
正如cletus在评论中指出的那样,如果你想抓取一个实际的textNode并从那里向上工作,事情确实比一个香草的jQuery选择器有点复杂。它可以完成,但你必须寻找节点类型3. This answer可能会帮助该部分。
4
任何元素或文本节点是Node
,它具有parentNode
属性。你不需要jQueryfor这一点,但你可以把父成jQuery对象:
$(textNode.parentNode)...
1
你的意思是像
$('.myselector').parent(); ?
2
jQuery提供了几个选项来执行此操作。最基本的一个是:
$(selector).parent();
这将返回所选择的元件的直接父节点(或者每个元件的所述集合中的父如果选择器匹配多个)。
下一个选项是:
$(selector).parents();
对于在匹配组中的每个元件,这将返回该元素的所有父母(和祖父母,曾祖父母,等等),直至并包括根节点(HTML文档为<html>
)。您可以将此选择器传递给仅获取匹配的元素。
$(selector).parents('div'); // only parents that are divs
最后一种方法是使用:
$(selector).closest(otherSelector);
这是一个有点不同,因为它会返回第一个元素,第二选择匹配,开始调用集。所以,如果我有这样的:
<div>
<ul>
<li>
<p id="foo">foo</p>
</li>
</ul>
</div>
和我做$('#foo').closest('p')
,我会回来一个jQuery设置包含p#foo
。如果我反而做$('#foo').closest('ul')
,我会回到<ul>
元素,就像你所期望的那样。
相关问题
- 1. 在给定节点下获取节点?
- 2. 如何获取XML中的父节点的父节点
- 3. 二叉树中距给定节点最近的叶节点
- 4. 获取使用SQL给定节点的父节点HIERARCHYID
- 5. 获取节点的JSON父节点
- 6. 如何从XPath中的子节点值节点获取父文本值?
- 7. 获取父节点
- 8. 如何获取PowerShell中的子节点的所有父节点
- 9. TreeList - 如何获取当前选定父节点的最后一个子节点?
- 10. 从父节点获取img节点
- 11. 在图中,如何找到一组节点的最近节点?
- 12. 获取C#中特定节点/标签的父节点/标签#
- 13. 获得给定节点的父节点D3树状图
- 14. 如何使用XPath从父节点获取子节点的文本
- 15. Xpath:如何获取我选择的节点的父节点?
- 16. 如何获取当前节点的父节点名称?
- 17. 树中最近的节点
- 18. 如何获取c#中的父节点文本值?
- 19. jQuery中最近的祖先节点
- 20. 在Data.Tree(haskell)中获取节点的父节点
- 21. jQuery:获取下一个节点(也是文本节点)
- 22. 如何读取部分选定子节点的父节点
- 23. 获取特定节点的父节点,其童装
- 24. 使用特定值获取节点父节点的XSLT
- 25. Angular UI树:获取节点的旧父节点和新父节点
- 26. 如何从给定父节点获取所有孩子?
- 27. 获取父节点及其子节点,其中子节点具有特定文本
- 28. 如何分别从每个父节点获取子节点?
- 29. 如何根据多个子节点值获取父节点?
- 30. 如何从给定的随机TreeViewItem中获取节点的根节点TreeViewItem
恩,你不能用jQuery选择器获取文本节点。 – cletus 2010-05-21 04:23:11
是的,这一点确实让它变得更加混乱。我正在编辑。 – 2010-05-21 05:06:59