एक्सएमएल डॉम - अट्रिब्यूट एंड मथोड

गुण और तरीके XML DOM को प्रोग्रामिंग इंटरफेस को परिभाषित करते हैं।

उदाहरण

नीचे का उदाहरण XML फ़ाइल का उपयोग करता है books.xml

तरीका loadXMLDoc()विदेशी JavaScript में स्थित है, XML फ़ाइल को लोड करने के लिए उपयोग किया जाता है।

तरीका loadXMLString()विदेशी JavaScript में स्थित है, XML श्रोत्र को लोड करने के लिए उपयोग किया जाता है।

XML फ़ाइल को लोड और पार्सिंग करना
XML श्रोत्र को लोड और पार्सिंग करना

प्रोग्रामिंग इंटरफेस

DOM XML को एक श्रृंखला नोड इंटरफेस के रूप में मॉक करता है। नोडों को JavaScript या अन्य प्रोग्रामिंग भाषा के द्वारा पहुंचा जा सकता है। इस पाठक में, हम JavaScript का उपयोग करते हैं।

DOM का प्रोग्रामिंग इंटरफेस एक मानक गुणों और तरीकों के एक सेट के द्वारा परिभाषित किया जाता है।

गुणअक्सर "किस चीज क्या है" के तरीके से इस्तेमाल किया जाता है (उदाहरण के लिए, नोड नाम "book" है)।

तरीकेअक्सर "किसी चीज़ के साथ क्या करना" के तरीके से इस्तेमाल किए जाते हैं (उदाहरण के लिए "book" नोड को मिटाएं)。

XML DOM गुण

कुछ तीव्र डॉम गुण:

  • x.nodeName - x का नाम
  • x.nodeValue - x का मूल्य
  • x.parentNode - x का मूल नोड
  • x.childNodes - x के उपनोड
  • x.attributes - x के गुण नोड

टिप्पणी:उपरोक्त सूची में, x एक नोड ऑब्जैक्ट है。

XML DOM तरीके

  • x.getElementsByTagName(name) - नाम से चयनित सभी एलिमेंट अर्जित करें
  • x.appendChild(node) - x में उपनोड को जोड़ें
  • x.removeChild(node) - x से उपनोड को हटाएं

टिप्पणी:उपरोक्त सूची में, x एक नोड ऑब्जैक्ट है。

उदाहरण

books.xml से <title> एलिमेंट के टेक्स्ट को प्राप्त करने वाला जावास्क्रिप्ट कोड:

txt=xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;

इस वाक्यांतर के बाद, txt द्वारा सहेजे गए मूल्य "Harry Potter" है。

व्याख्या:

  • xmlDoc - पार्सर द्वारा बनाया गया XML DOM
  • getElementsByTagName("title")[0] - पहला <title> एलिमेंट
  • childNodes[0] - <title> एलिमेंट का पहला चयनित नोड (टेक्स्ट नोड)
  • nodeValue - नोड के मूल्य (टेक्स्ट खुद)

उपरोक्त उदाहरण में, getElementsByTagName() एक तरीका है, और childNodes और nodeValue एक गुण हैं。

XML फ़ाइल का पढ़ाई - क्रॉस-ब्राउज़र प्रयोग

इस कोड फ्रेमवर्क loadXMLDoc फ़ंक्शन के द्वारा लोड करता है books.xml XML पार्सर में लोड करें, और पहले book के डाटा को दिखाएं:

xmlDoc=loadXMLDoc("books.xml");
document.write(xmlDoc.getElementsByTagName("title"))
[0].childNodes[0].nodeValue);
document.write("<br />");
document.write(xmlDoc.getElementsByTagName("author"))
[0].childNodes[0].nodeValue);
document.write("<br />");
document.write(xmlDoc.getElementsByTagName("year"))
[0].childNodes[0].nodeValue);

आउटपुट:

हैरी पॉटर
जे के. रॉलिंग
2005

TIY

उपरोक्त उदाहरण में, हमने प्रत्येक टेक्स्ट नोड के लिए childNodes[0] का उपयोग किया, भले ही प्रत्येक एलिमेंट केवल एक टेक्स्ट नोड हो। यह इसलिए है कि getElementsByTagName() मथडड़ी हमेशा एक आयत्तय वापस देती है。

XML शब्दबंध का पढ़ाई - क्रॉस-ब्राउज़र प्रयोग

इस कोड एक XML शब्दबंध को लोड और पढ़ाता है

इस कोड फ्रेमवर्क loadXMLString फ़ंक्शन के द्वारा लोड करता है books.xml XML पार्सर लोड करें और पहले book के डाटा को दिखाएं:

text="<bookstore>"
text=text+"<book>";
text=text+"<title>Harry Potter</title>";
text=text+"<author>J K. Rowling</author>";
text=text+"<year>2005</year>";
text=text+"</book>";
text=text+"</bookstore>";
xmlDoc=loadXMLString(text);
document.write(xmlDoc.getElementsByTagName("title"))
[0].childNodes[0].nodeValue);
document.write("<br />");
document.write(xmlDoc.getElementsByTagName("author"))
[0].childNodes[0].nodeValue);
document.write("<br />");
document.write(xmlDoc.getElementsByTagName("year"))
[0].childNodes[0].nodeValue);

आउटपुट:

हैरी पॉटर
जे के. रॉलिंग
2005

TIY