ZetCode

VBScript MSXML2.IXMLDOMElement 对象

最后修改于 2025 年 4 月 9 日

VBScript 中的 MSXML2.IXMLDOMElement 对象代表 XML 文档中的一个元素节点。它是 Microsoft XML Core Services (MSXML) 库的一部分。该对象提供了操作 XML 元素的方法和属性。

IXMLDOMElement 允许访问元素的属性、子节点和文本内容。它继承自 IXMLDOMNode,并增加了特定于元素的功能。本教程将通过实际示例演示 IXMLDOMElement 的用法。

IXMLDOMElement 对象概述

IXMLDOMElement 接口在 DOM 树中代表 XML 元素。它提供了对元素名称、属性和子节点的访问。关键属性包括 tagNameattributestext

重要方法包括 getAttributesetAttributeremoveAttribute。该对象支持命名空间操作和 XPath 查询。理解此接口对于 VBScript 中的 XML 处理至关重要。

创建和访问 XML 元素

此示例演示了创建 XML 文档和访问元素。它展示了如何创建 DOM 文档并获取元素引用。该脚本创建了一个简单的 XML 结构并访问了根元素。

basic_element.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
xmlDoc.async = False
xmlDoc.loadXML "<root><person><name>John</name></person></root>"

Set rootElement = xmlDoc.documentElement
WScript.Echo "Root element: " & rootElement.tagName

Set personElement = rootElement.firstChild
WScript.Echo "First child: " & personElement.tagName

Set xmlDoc = Nothing

该脚本创建了一个带有根元素和子元素的 XML 文档。documentElement 属性获取根元素。tagName 属性显示元素名称。这展示了 XML 文档中的基本元素访问。

处理元素属性

此示例演示了 XML 元素上的属性操作。它展示了如何设置、获取和删除属性。该脚本创建了一个元素并通过编程方式修改其属性。

element_attributes.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set element = xmlDoc.createElement("product")
element.setAttribute "id", "P1001"
element.setAttribute "category", "Electronics"

WScript.Echo "ID: " & element.getAttribute("id")
WScript.Echo "Category: " & element.getAttribute("category")

element.removeAttribute "category"
WScript.Echo "Category after removal: " & element.getAttribute("category")

Set xmlDoc = Nothing

该脚本创建了一个产品元素并添加了两个属性。它使用 getAttribute 获取属性值。removeAttribute 方法演示了属性的删除。这展示了完整的属性管理。

访问元素文本内容

此示例展示了如何处理元素文本内容。它演示了访问和修改元素文本的不同方法。该脚本创建了带有文本内容的元素并对其进行操作。

element_text.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
xmlDoc.loadXML "<book><title>VBScript Programming</title></book>"

Set titleElement = xmlDoc.documentElement.firstChild
WScript.Echo "Text content: " & titleElement.text

titleElement.text = "Advanced VBScript"
WScript.Echo "Modified text: " & titleElement.text

Set xmlDoc = Nothing

该脚本加载了一个带有书籍标题的 XML 文档。它使用 text 属性访问文本内容。然后,该示例修改文本内容并显示更改。这演示了简单的文本操作。

创建嵌套 XML 元素

此示例演示了构建具有嵌套元素的复杂 XML 结构。它展示了如何创建元素并将它们作为子节点追加。该脚本通过编程方式构建 XML 文档。

nested_elements.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set root = xmlDoc.createElement("employees")
xmlDoc.appendChild root

Set employee = xmlDoc.createElement("employee")
employee.setAttribute "id", "E101"
root.appendChild employee

Set name = xmlDoc.createElement("name")
name.text = "Alice Johnson"
employee.appendChild name

WScript.Echo xmlDoc.xml

Set xmlDoc = Nothing

该脚本创建了一个带有嵌套员工元素的员工根元素。每个员工都有属性和子元素。完整的结构是通过编程方式构建的。xml 属性输出最终的 XML 文档。

使用 XPath 搜索元素

此示例演示了使用 XPath 查找特定元素。它展示了如何根据元素的属性或位置进行查询。该脚本加载 XML 文档并执行 XPath 查询。

xpath_search.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
xmlDoc.async = False
xmlDoc.loadXML "<products><product id='1'>Laptop</product>" & _
               "<product id='2'>Phone</product></products>"

Set products = xmlDoc.selectNodes("//product[@id='2']")
For Each product In products
    WScript.Echo "Found product: " & product.text
Next

Set xmlDoc = Nothing

该脚本加载了一个带有产品元素的 XML 文档。它使用 XPath 查找具有特定属性的产品。selectNodes 方法返回匹配的元素。这展示了强大的 XML 查询功能。

来源

MSXML2.IXMLDOMElement 文档

在本文中,我们探讨了 VBScript 中的 MSXML2.IXMLDOMElement 对象,涵盖了它的用法和实际应用。从基本元素操作到复杂的 XML 处理,这些示例演示了必要的 XML 处理技术。通过这些知识,您可以有效地在 VBScript 应用程序中使用 XML。

作者

我叫 Jan Bodnar,是一位充满激情的程序员,拥有多年的编程经验。我自 2007 年开始撰写编程文章。到目前为止,我已撰写了 1400 多篇文章和 8 本电子书。我在教学编程方面拥有八年以上的经验。

列出所有 VBScript 教程