2010-04-26 8 views
5

आप $ (xml) में नीचे एक्सएमएल है, तो आप का उपयोग कर droopy मिलेगा:jQuery - xpath ढूंढें?

$(xml).find("animal").find("dog").find("beagle").text() 

वहाँ jQuery में एक बराबर तरीका की तरह

$(xml).xpathfind("/animal/dog/beagle").text()? 

<animal> 
    <dog> 
     <beagle> 
      droopy 
     </beagle> 
     ... 

उत्तर

5

jQuery बहुत समर्थन किया xpath उपयोग करने के लिए है आपके द्वारा दिए गए उदाहरण सहित मूल XPath।

$(xml).find("animal/dog/beagle") 

संपादित करें: आप सही हैं, वे जाहिरा तौर पर यह कोर से हटा दिया है, तो आप एक "संगतता" plugin उपयोग करना होगा।

संपादित करें: xpath प्लगइन XPath Plugin

+1

का उपयोग करेंगे, मैंने कोशिश की, लेकिन यह काम नहीं किया। सीएसएस चयनकर्ता वाक्यविन्यास, "पशु> कुत्ता> बीगल" किया था। मैंने कोशिश की "/ ए/डी/बी", "// ए/डी/बी" भी। क्या मुझे प्लगइन शामिल करना है? – Steve

+0

मुझे लगता है कि इसे प्रमुख स्लैश के साथ करना है। "/ A/d/b" –

+0

के बजाय "ए/डी/बी" आज़माएं हाँ, मैंने रेसिग से पुरानी एक्सपैथ प्लगइन की कोशिश की, लेकिन स्रोत को देखते हुए, यह xpath का न्यूनतम कवरेज था। ओह ठीक है, सीएसएस चयनकर्ता करेंगे। बस यह सुनिश्चित करना चाहता था कि xpath नवीनतम jQuery का हिस्सा था या नहीं। – Steve

4

jQuery पर अपडेट किया गया लिंक, वास्तव में बुनियादी XPath का समर्थन करता है, ताकि आप केवल find उपयोग कर सकते हैं।

वैकल्पिक रूप से, सीएसएस चयनकर्ता वाक्यविन्यास का उपयोग करें। अपने विशेष उदाहरण के लिए, आप $(xml).find("animal > dog > beagle").text()

+0

और विशेषता मान प्राप्त करने के लिए आप '$ (xml) .find (" element ") का उपयोग कर सकते हैं। Attr (" विशेषता ")' – sree