نسخ نقطة البيانات XML DOM

مثال

في هذا المثال، يستخدم ملف XML books.xml.

وظيفة loadXMLDoc()، موجودة في JavaScript الخارجي، تستخدم لتحميل ملف XML

نسخ النود وإضافتها إلى النود الموجودة
في هذا المثال، يستخدم cloneNode() لتكثير النود وإضافتها إلى رأس مستند XML

نسخ النود

تخلق طريقة cloneNode() نسخة من النود المحدد

يملك طريقة cloneNode() متغيرًا واحدًا (true أو false). يشير هذا المتغير إلى ما إذا كان النود المستنسخة تحتوي على جميع خصائص النود الأصلية وأبنائها

كود المقطع التالي نسخ أول عقدة <book> ويضعه في رأس المستند

xmlDoc=loadXMLDoc("books.xml");
oldNode=xmlDoc.getElementsByTagName('book')[0];
newNode=oldNode.cloneNode(true);
xmlDoc.documentElement.appendChild(newNode);
//إخراج جميع العناوين
y=xmlDoc.getElementsByTagName("title");
للمحصول على i=0;i<y.length;i++)
{
document.write(y[i].childNodes[0].nodeValue);
document.write("<br />");
}

الإخراج:

Harry Potter
Everyday Italian
XQuery Kick Start
تعلم XML
Harry Potter

مثال التوضيح:

  1. باستخدام loadXMLDoc() إضافة "books.xml"تحميل xmlDoc"
  2. الحصول على العقد الذي سيتم نسخه
  3. إعادة تكرار العقد باستخدام طريقة cloneNode إلى "newNode"
  4. إضافة عقد جديد إلى عقد الجذر في مستند XML
  5. إخراج جميع العناوين الخاصة بكتاب في المستند

TIY