استبدال عقد DOM XML

replaceChild() الطريقة تستبدل العنصر المحدد.

nodeValue الخصائص تستبدل النص في العنصر النصي.

استبدال العنصر النصي

replaceChild() الطريقة تستخدم لاستبدال العناصر.

الكود التالي يستبدل العنصر <book> الأول:

مثال

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.documentElement;
// إنشاء عنصر <book> و <title> و عقد نصي
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("كتاب جديد");
// إضافة العنصر النصي إلى العنصر <title>
newTitle.appendChild(newText);
// إضافة هذا العنصر <title> إلى العنصر <book>
newNode.appendChild(newTitle);
y=xmlDoc.getElementsByTagName("book")[0];
// استبدال العنصر الأول <book> بعنصر جديد
x.replaceChild(newNode,y);

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. إنشاء عنصر جديد <book>
  3. إنشاء عنصر جديد <title>
  4. إنشاء عنصر نصي جديد يحتوي على النص "كتاب جديد"
  5. إضافة العنصر النصي الجديد إلى العنصر الجديد <title>
  6. إضافة العنصر الجديد <title> إلى العنصر الجديد <book>
  7. استبدال العنصر <book> الأول بعنصر <book> جديد

استبدال نص العنصر النصي

replaceData() الطريقة تستخدم لاستبدال نص العنصر النصي.

replaceData() الطريقة تحتوي على ثلاثة معلمات:

  • offset - من حيث البداية سيتم استبدال الحروف. قيمة الإزاحة تبدأ من الصفر
  • length - عدد الحروف التي سيتم استبدالها
  • string - النص الذي سيتم إدراجه

مثال

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,4,"كتاب جديد");

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 replaceData() الطريقة ستستبدل ثمانية حروف نصية مسبقة للعنصر النصي بالكلمة "كتاب جديد"

استخدم خاصية nodeValue بدلاً من ذلك

使用 nodeValue الخصائص تجعل استبدال نص العنصر النصي أسهل.

الكود التالي سيستبدل نص العنوان الأول في العنصر <title> بالكلمة "كتاب جديد"

مثال

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue=“كتاب جديد”;

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 nodeValue 属性来更改文本节点的文本

您可以在 改变节点 这一章中阅读有关更改节点值的更多内容。