XML DOM 实例


XML DOM实例

XML(可扩展标记语言)是一种用于数据交换的语言。XML文档可以被处理为DOM(文档对象模型),这是XML DOM的核心。XML DOM是一种树形结构,它可用于表示HTML和XML文档。XML DOM提供了访问文档的方法和属性,使开发人员可以轻松地访问和修改XML文档。

在HTML中使用XML DOM

可以使用XML DOM来访问并修改HTML文档。下面的示例显示了如何使用XML DOM获取一个p元素的文本内容:

<!DOCTYPE html>
<html>
<body>

<p id="demo">这是一个段落</p>

<script>
var x = document.getElementById("demo").innerHTML;
document.write(x);
</script>

</body>
</html>

操作XML文档

XML DOM使我们能够在XML文档中查找特定元素,同时还能够为元素添加、删除和修改内容。下面提供一个XML文档的示例,以便我们执行DOM操作:

<?xml version="1.0" encoding="UTF-8"?>
<note>
   <to>Tove</to>
   <from>Jani</from>
   <heading>Reminder</heading>
   <body>Don't forget me this weekend!</body>
</note>

访问XML元素

要访问XML元素,我们需要使用一种方法来获取文档元素或文档元素集合。例如,在上面的XML文档中,我们可以使用getElementsByTagName()方法来获取所有的元素。下面提供了一个示例:

var xmlDoc = loadXMLDoc("note.xml");
var x = xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;

修改XML元素

我们可以使用DOM来动态地改变XML文档中的元素。例如,如果我们想更改上面XML文档中的某个元素的内容,我们可以使用如下代码:

x[0].childNodes[0].nodeValue="Adam";

用DOM创建XML文档

也可以使用DOM来创建XML文档。这可以通过以下步骤完成:

  1. 创建文档对象:var xmlDoc = document.implementation.createDocument("", "", null);
  2. 创建XML根元素:var mainNode = xmlDoc.createElement("root");
  3. 为根元素添加属性:mainNode.setAttribute("attribute_name","attribute_value");
  4. 创建XML子元素:var childNode = xmlDoc.createElement("element");
  5. 为子元素添加文本:var childNodeText = xmlDoc.createTextNode("This is a child element.");
  6. 将子元素添加到根节点:childNode.appendChild(childNodeText);
  7. 将根元素添加到文档对象:xmlDoc.appendChild(mainNode);

完整的代码如下所示:

var xmlDoc = document.implementation.createDocument("", "", null);
var mainNode = xmlDoc.createElement("root");
mainNode.setAttribute("attribute_name","attribute_value");
xmlDoc.appendChild(mainNode);
var childNode = xmlDoc.createElement("element");
var childNodeText = xmlDoc.createTextNode("This is a child element.");
childNode.appendChild(childNodeText);
mainNode.appendChild(childNode);

结论

XML DOM提供了访问和修改XML文档的一系列方法。我们可以轻松地访问XML元素和修改XML文档的内容。XML DOM也可以用于创建XML文档。我们可以使用这些方法来创建XML文档树。