📜  XML DOM-添加节点

📅  最后修改于: 2020-11-10 05:09:26             🧑  作者: Mango


在本章中,我们将讨论现有元素的节点。它提供了一种方法-

  • 在现有子节点之前或之后附加新的子节点

  • 在文本节点内插入数据

  • 添加属性节点

可以使用以下方法将节点添加/添加到DOM中的元素-

  • appendChild()
  • insertBefore()
  • insertData()

appendChild()

方法appendChild()在现有子节点之后添加新的子节点。

句法

appendChild()方法的语法如下-

Node appendChild(Node newChild) throws DOMException

哪里,

  • newChild-是要添加的节点

  • 此方法返回添加的Node

下面的例子(appendchildnode_example.htm)解析XML文档( node.xml )成XML DOM对象,并追加新的子PHONENO到元素<姓>。


   
   
      
   

在上面的示例中-

  • 使用方法createElement(),创建一个新元素PhoneNo

  • 使用方法appendChild()将新元素PhoneNo添加到元素FirstName中

执行

将此文件另存为serverpath上的appendchildnode_example.htm (此文件和node.xml应该在服务器中的同一路径上)。在输出中,我们获得的属性值为PhoneNo

insertBefore()

insertBefore()方法将新的子节点插入到指定的子节点之前。

句法

insertBefore()方法的语法如下-

Node insertBefore(Node newChild, Node refChild) throws DOMException

哪里,

  • newChild-是要插入的节点

  • refChild-是参考节点,即必须在其之前插入新节点的节点。

  • 此方法返回要插入的Node

下面的例子(insertnodebefore_example.htm)解析XML文档( node.xml )到指定的元素<电子邮件>前的XML DOM对象和插入新的子电子邮件


   
   
      
   

在上面的示例中-

  • 使用createElement()方法,将创建一个新元素Email

  • 使用方法insertBefore()将新元素Email添加到元素Email之前。

  • y.length给出在新元素之前和之后添加的元素总数。

执行

将此文件另存为serverpath上的insertnodebefore_example.htm (此文件和node.xml应该在服务器中的同一路径上)。我们将收到以下输出-

No of Email elements before inserting was: 3
No of Email elements after inserting is: 4 

insertData()

方法insertData()以指定的16位单位偏移量插入一个字符串。

句法

insertData()具有以下语法-

void insertData(int offset, java.lang.String arg) throws DOMException

哪里,

  • offset-是要插入的字符偏移量。

  • arg-是插入数据的关键字。它将圆括号内的两个参数offset和字符串括在逗号之间。

以下示例(addtext_example.htm)将XML文档(“ node.xml ”)解析为XML DOM对象,并将新数据MiddleName在指定位置插入元素


  
  
     
   

  • x.insertData(6,“ MiddleName”); −在此, x保存指定子名称的名称,即。然后,我们从位置6开始向该文本节点插入数据“ MiddleName”

执行

在服务器路径上将此文件另存为addtext_example.htm (此文件和node.xml应该在服务器中的同一路径上)。我们将在输出中收到以下内容-

Tanmay
TanmayMiddleName