2011-01-17 15 views
39
<ul><li><div><div><span id="thisid"></span></div></div></li></ul> 

$('#thisid').parent('li'); 

जो स्पष्ट रूप से काम नहीं करता है, लेकिन मैं ली तत्व कैसे प्राप्त करूं? क्योंकि यह, हो सकता है दो के बजाय सिर्फ एक div तत्व है कि वहाँJQuery, पैरेंट

$('#this').parent().parent().parent(); 

मैं इसे उपयोग करने के लिए नहीं करना चाहते,: मैं उपयोग करने के लिए नहीं करना चाहती। इस मामले में मैं ली तत्व के बजाय उल तत्व पकड़ लेगा।

उत्तर

76
$('#thisid').parents('li'); 
//    ^plural! 

ध्यान दें कि अगर आप केवल वंश में पहली <li> तत्व चाहते हैं, आप closest() उपयोग करना चाहिए:

$('#thisid').closest('li'); 

// `closest()` is equivalent to (but performs better than) 
$('#thisid').parents('li').eq(0); 
$('#thisid').parents('li').first(); 
+2

सभी चार उदाहरण महान समाधान कर रहे हैं में। – Moses

+0

बस यह स्पष्ट करना चाहता था कि एकवचन "अभिभावक()" * एक मान्य फ़ंक्शन कॉल है; यह सिर्फ ऐसा नहीं करता है जो प्रश्न-पूछताछ की आवश्यकता थी। – mwardm

1

सरल, का उपयोग parents()

var parents = $("#thisid").parents('li'); 
2
$('#thisid').parents('li:eq(0)'); 

यह करना चाहिए। यह आपको पहला (:eq(0)) अभिभावक देगा जो उस टैग से मेल खाता है जिसे आप खोज रहे हैं।

6
$('#thisid').parents('li') 

या अगर आप केवल पहले एक हैं:

$('#thisid').closest('li') 
0

आप वास्तव में $("#thisid").closest('li') उपयोग कर सकते हैं। यह चयनित नोड से डीओएम पेड़ को पार करता है और पहले मिलान करने वाले पूर्वजों को लौटाता है जबकि .parents() पैरेंट नोड से यात्रा करता है और उस फ़िल्टर से मेल खाने वाले सभी पूर्वजों नोड्स देता है। अधिक जानकारी के लिए here देखें।

1

मैं 'माता-पिता' से 'निकटतम' पसंद करता हूं।

माता-पिता दस्तावेज़ के मूल तत्व में डोम पेड़ की यात्रा करते हैं, प्रत्येक पूर्वजों तत्व को अस्थायी संग्रह में जोड़ते हैं; यह तब किसी संग्रहकर्ता के आधार पर उस संग्रह को फ़िल्टर करता है यदि कोई आपूर्ति की जाती है।

जहां

निकटतम सफर ऊपर डोम पेड़ जब तक यह आपूर्ति चयनकर्ता के लिए एक मैच पाता है।

सबसे महत्वपूर्ण है कि वे क्या परिणाम में दे:

Praents: लौटाया गया jQuery वस्तु मूल सेट में प्रत्येक तत्व के लिए शून्य या अधिक तत्वों, रिवर्स दस्तावेज़ क्रम में शामिल हैं।

निकटतम: लौटाया गया jQuery वस्तु, मूल सेट में प्रत्येक तत्व के लिए शून्य या एक तत्व शामिल दस्तावेज़ आदेश

$('#thisid').closest('li'); 

Follow this Link