एक्सएमएल डॉम नोड जोड़ना

नोड जोड़ें - appendChild()

appendChild() इस तरीके से सह-एलीमेंट को मौजूदा नोड में जोड़ा जाता है。

नए नोड को किसी भी मौजूदा सह-एलीमेंट के बाद जोड़ा जा सकता है。

ध्यान दें:यदि नोड का स्थान महत्वपूर्ण है, तो insertBefore() का उपयोग करें。

नीचे दिए गए कोड खंड एक एलीमेंट (<edition>) बनाता है और इसे पहले <book> एलीमेंट के अंतिम सह-एलीमेंट के बाद जोड़ता है:

उदाहरण 1

newEle = xmlDoc.createElement("edition");
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);

अपने आप से प्रयास करें

उदाहरण ब्याख्या:

  1. मान लीजिए books.xml लोड कर लिया गया है xmlDoc में
  2. नया नोड <edition> बनाएं
  3. पहले <book> एलीमेंट में नोड को जोड़ें

इस कोड खंड का काम ऊपरी वाले के समान है, लेकिन नए एलीमेंट में एक मूल्य जोड़ा गया है:

उदाहरण 2

newEle = xmlDoc.createElement("edition");
newText=xmlDoc.createTextNode("पहला संस्करण");
newEle.appendChild(newText);
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);

अपने आप से प्रयास करें

उदाहरण ब्याख्या:

  1. मान लीजिए books.xml लोड कर लिया गया है xmlDoc में
  2. नया नोड <edition> बनाएं
  3. नया टेक्स्ट नोड बनाएं "पहला संस्करण"
  4. इस टेक्स्ट नोड को <edition> नोड में जोड़ें
  5. <edition> नोड को <book> एलीमेंट में जोड़ें

नोड जोड़ने - insertBefore()

insertBefore() मेथड नोड को निर्दिष्ट सब-नोड के सामने जोड़ता है。

अगर जोड़े गए नोड का स्थान महत्वपूर्ण है, तो यह मेथड बहुत उपयोगी है:

इस्तरा

newNode = xmlDoc.createElement("book");
x = xmlDoc.documentElement;
y = xmlDoc.getElementsByTagName("book")[3];
x.insertBefore(newNode,y);

अपने आप से प्रयास करें

उदाहरण ब्याख्या:

  1. मान लीजिए books.xml लोड कर लिया गया है xmlDoc में
  2. नया एलीमेंट नोड <book> बनाएं
  3. इस नए नोड को अंतिम <book> एलीमेंट नोड के सामने जोड़ें
  4. अगर insertBefore() का दूसरा पैरामीट null है, तो नया नोड अंतिम मौजूदा चाइल्ड नोड के बाद जोड़ा जाएगा。

x.insertBefore(newNode,null) और x.appendChild(newNode) x में नए चाइल्ड नोड को जोड़ सकते हैं。

नया एट्रिब्यूट जोड़ें

setAttribute() मेथड एट्रिब्यूट का मूल्य सेट करता है。

अगर एट्रिब्यूट नहीं है, तो setAttribute() नया एट्रिब्यूट बनाने के लिए

इस्तरा

xmlDoc.getElementsByTagName('book')[0].setAttribute("edition","पहला संस्करण");

अपने आप से प्रयास करें

उदाहरण ब्याख्या:

  1. मान लीजिए books.xml लोड कर लिया गया है xmlDoc में
  2. पहले <book> एलीमेंट के "edition" एट्रिब्यूट का मूल्य "पहला संस्करण" रखा जाए

ध्यान दें:addAttribute() नाम की कोई मेथड नहीं है, अगर एट्रिब्यूट नहीं है, तो setAttribute() नया एट्रिब्यूट बनाएगा। अगर एट्रिब्यूट पहले से ही मौजूद है, तो setAttribute() मेथड नया मूल्य ओवरराइड करेगा。

टेक्स्ट को टेक्स्ट नोड में जोड़ें - insertData()

insertData() मेथड डाटा को मौजूदा टेक्स्ट नोड में इंसर्ट करता है。

insertData() मेथड दो पैरामीट रखता है:

  • ऑफसेट - से कहाँ चारकी इंसर्ट करना शुरू करें (0 से शुरू होता है)
  • string - जोड़ने वाला स्ट्रिंग

नीचे दिए गए कोड फ़ेज़ ह "मेरा सबसे पसंदीदा" एक लोड किए गए XML के पहले <title> एलिमेंट के टेक्स्ट नोड में जोड़ेगा:

इस्तरा

xmlDoc.getElementsByTagName("title")[0].childNodes[0].insertData(0,"मेरा सबसे पसंदीदा");

अपने आप से प्रयास करें