假設我有一個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