एक्सएमएल डॉम नोड एक्सेस
- पिछला पृष्ठ DOM गुण और विधियां
- अगला पृष्ठ DOM नोड जानकारी
DOM के माध्यम से, आप XML दस्तावेज़ के हर नोड को पहुंच सकते हैं。
उदाहरण
नीचे के उदाहरण में XML फ़ाइल का उपयोग किया जाता है books.xml.
तर्क loadXMLDoc()विदेशी जावास्क्रिप्ट में स्थित है, जो XML फ़ाइलों को लोड करने के लिए उपयोग किया जाता है。
- नोड सूची में निर्दिष्ट इंडेक्स से नोड को पहुंचना
- इस उदाहरण में getElementsByTagname() विधि का उपयोग करके "books.xml" में तीसरे <title> एलीमेंट को प्राप्त किया जाता है。
- लेंथ अधिकार का उपयोग करके नोडों को परिभ्रमण करना
- इस उदाहरण में length अधिकार का उपयोग करके "books.xml" में सभी <title> एलीमेंटों को परिभ्रमण किया जाता है。
- एलीमेंट के नोड क़िस्म को देखना
- इस उदाहरण में nodeType अधिकार का उपयोग करके "books.xml" में रूट एलीमेंट के नोड क़िस्म को प्राप्त किया जाता है。
- एलीमेंट नोडों को परिभ्रमण करने के लिए
- इस उदाहरण में nodeType अधिकार का उपयोग करके "books.xml" में एलीमेंट नोडों को संभाला जाता है。
- नोड संबंधों का उपयोग करके एलीमेंट नोडों को परिभ्रमण करने के लिए
- इस उदाहरण में nodeType अधिकार और nextSibling अधिकार का उपयोग करके "books.xml" में एलीमेंट नोडों को संभाला जाता है。
नोड पहुंच
आप नोड को तीन तरीकों से पहुंच सकते हैं:
- getElementsByTagName() विधि का उपयोग करके
- नोड ट्री को परिभ्रमण करके
- उद्धरण के संबंधों का उपयोग करके नोड ट्री में नैविगेशन करने के लिए
getElementsByTagName() विधि
getElementsByTagName() विधि निर्दिष्ट टैग नाम वाले सभी एलीमेंटों को प्रदान करती है。
वाक्यांश
node.getElementsByTagName("tagname");
उदाहरण
नीचे का उदाहरण x एलिमेंट के अंदर सभी <title> एलिमेंट को वापस करता है:
x.getElementsByTagName("title");
ध्यान दें कि ऊपरी उदाहरण केवल x नोड़ के अंदर <title> एलिमेंट को वापस करता है। XML दस्तावेज़ के सभी <title> एलिमेंट को वापस करने के लिए इस्तेमाल करें:
xmlDoc.getElementsByTagName("title");
यहाँ, xmlDoc दस्तावेज़ कोशिश करता है (दस्तावेज़ नोड़)
DOM Node List
getElementsByTagName() विधि का उपयोग करके नोड़ सूची (node list) प्राप्त करती है। नोड़ सूची नोड़ का एक सूची है
नीचे की कोड इस्तेमाल करके loadXMLDoc() वे "books.xml" xmlDoc में लोड करें, फिर वेरियबल x में <title> नोड़ की एक सूची को संग्रह करें:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title");
x में <title> एलिमेंट को सूचकांक के द्वारा पहुँच सकते हैं। तीसरे <title> को पहुँचने के लिए आप लिख सकते हैं:
y=x[2];
टिप्पणी:सूचकांक 0 से शुरू होता है
इस ट्यूटोरियल के बाद के भाग में, आपको Node List के बारे में अधिक जानकारी मिलेगी
DOM Node List Length
लैंगथ गुण नोड़ सूची की लंबाई (यानी नोड़ की संख्या) को परिभाषित करता है
आप लैंगथ गुण का उपयोग करके एक नोड़ सूची को चक्रवात कर सकते हैं:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title"); for (i=0;i<x.length;i++) { दस्तावेज़.वर्ट्राइट(x[i].childNodes[0].nodeValue); दस्तावेज़.वर्ट्राइट("<br />"); }
उदाहरण स्पष्टीकरण:
- इस्तेमाल करें loadXMLDoc() वे "books.xml" xmlDoc लोड करें
- सभी <title> एलिमेंट नोड़ प्राप्त करें
- प्रत्येक <title> एलिमेंट के टेक्स्ट नोड़ के मूल्य को आउटपुट करें
Node Type
XML दस्तावेज़ का documentElement गुण शीर्ष नोड़ है
नोड़ का nodeName गुण नोड़ का नाम है
नोड़ का nodeType गुण नोड़ की क़िस्म है
आपको इस ट्यूटोरियल के अगले भाग में नोड़ गुणों के बारे में अधिक जानकारी मिलेगी。
नोड़ को चक्रवात करें
नीचे की कोड शीर्ष नोड़ के उपआईड़ा को चक्रवात करती है, जो एलिमेंट नोड़ हैं:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement.childNodes; for (i=0;i<x.length;i++) { यदि (x[i].nodeType==1) {//केवल एलिमेंट नोड (टाइप 1) प्रसंस्करण करें दस्तावेज़.वर्ट्राइट(x[i].nodeName); दस्तावेज़.वर्ट्राइट("<br />"); } }
उदाहरण स्पष्टीकरण:
- इस्तेमाल करके loadXMLDoc() वे "books.xml" xmlDoc में लोड करें
- शीर्ष एलिमेंट के उपआईड़ा प्राप्त करें
- दस्तावेज़ के प्रत्येक उपआईड़ा के नोड़ क़िस्म की जाँच करें। यदि नोड़ क़िस्म "1" है, तो यह एलिमेंट नोड़ है
- यदि यह एलिमेंट नोड है, तो नोड का नाम आउटपुट करें
नोड के संबंधों का उपयोग करके नेविगेशन करना
नोड ट्री में नोड के संबंधों का उपयोग करके नीचे कोड नोड नेविगेशन करता है:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book")[0].childNodes; y=xmlDoc.getElementsByTagName("book")[0].firstChild; for (i=0;i<x.length;i++) { if (y.nodeType==1) {//केवल एलिमेंट नोड (टाइप 1) प्रसंस्करण करें document.write(y.nodeName + "<br />"); } y=y.nextSibling; }
- इस्तेमाल करके loadXMLDoc() वे "books.xml" xmlDoc में लोड करें
- पहले book एलिमेंट के सहीब नोड प्राप्त करें
- वे "y" वेरियेबल को पहले book एलिमेंट के पहले सहीब नोड को सेट करें
- प्रत्येक सहीब नोड के नोड टाइप की जांच करें, यदि नोड टाइप "1" है, तो यह एलिमेंट नोड है
- यदि यह एलिमेंट नोड है, तो नोड का नाम आउटपुट करें
- वे "y" वेरियेबल को अगले समकक्ष नोड को सेट करें, और फिर सर्किल चलाएं
- पिछला पृष्ठ DOM गुण और विधियां
- अगला पृष्ठ DOM नोड जानकारी