ZetCode

VBScript CreateElement 方法

最后修改于 2025 年 4 月 9 日

VBScript 中的 CreateElement 方法用于在 XML 或 HTML 文档中创建新的元素节点。它是文档对象模型 (DOM) 接口的一部分。此方法生成可以插入到文档结构中的元素。它对于动态文档操作至关重要。

CreateElement 创建元素但不会立即将它们添加到文档中。您必须显式地将创建的元素附加到 DOM 树。本教程通过实际示例涵盖 CreateElement,以演示其在各种场景中的用法。

CreateElement 方法概述

CreateElement 方法接受一个参数:要创建的元素的标签名。它返回一个尚未属于文档的新元素节点对象。该方法可通过 VBScript 中的 DOM 文档对象访问。

主要功能包括为 XML 和 HTML 文档创建元素。创建的元素可以在插入前添加属性和内容。CreateElement 对于以编程方式生成文档至关重要。理解此方法有助于在脚本中创建动态内容。

创建简单的 XML 元素

此示例演示了使用 CreateElement 创建基本的 XML 元素。它展示了如何创建元素、设置其文本内容并将其附加到文档。然后输出生成的 XML 结构。

simple_xml_element.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set root = xmlDoc.createElement("Person")
xmlDoc.appendChild root

Set name = xmlDoc.createElement("Name")
name.text = "John Doe"
root.appendChild name

WScript.Echo xmlDoc.xml
Set xmlDoc = Nothing

该脚本创建一个 XML 文档和一个根“Person”元素。然后创建一个带有文本内容的“Name”子元素。输出生成的 XML 结构,显示正确的嵌套。这演示了基本的元素创建和层次结构。

创建 HTML 元素

此示例展示了如何使用 CreateElement 创建 HTML 元素。它创建了一个带有文本内容的段落元素。该示例演示了 VBScript 中特定于 HTML 的元素创建和操作。

html_element.vbs
Set htmlDoc = CreateObject("htmlfile")
Set body = htmlDoc.body

Set paragraph = htmlDoc.createElement("p")
paragraph.innerText = "This is a new paragraph."
body.appendChild paragraph

WScript.Echo body.innerHTML
Set htmlDoc = Nothing

该脚本创建一个 HTML 文档并访问其 body 元素。然后创建一个段落元素并设置其文本。将该段落附加到文档的 body。输出生成的 HTML 以演示结构。

创建带属性的元素

此示例演示了使用 CreateElement 创建带属性的元素。它展示了如何创建元素,然后为其添加属性。该示例使用了 XML,但同样适用于 HTML。

element_with_attributes.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set book = xmlDoc.createElement("Book")
book.setAttribute "id", "B001"
book.setAttribute "category", "Fiction"

Set title = xmlDoc.createElement("Title")
title.text = "The Great Novel"
book.appendChild title

xmlDoc.appendChild book
WScript.Echo xmlDoc.xml
Set xmlDoc = Nothing

该脚本创建了一个带有 id 和 category 属性的“Book”元素。然后创建一个带有文本内容的“Title”子元素。生成的 XML 显示了同时具有属性和嵌套内容的元素。这演示了对创建的元素进行属性处理。

创建嵌套元素

此示例展示了如何使用 CreateElement 创建复杂的嵌套元素结构。它构建了一个多层级的 XML 结构。每个级别都演示了元素创建和正确的嵌套。

nested_elements.vbs
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set catalog = xmlDoc.createElement("Catalog")

Set book = xmlDoc.createElement("Book")
Set title = xmlDoc.createElement("Title")
title.text = "XML Basics"
book.appendChild title

Set author = xmlDoc.createElement("Author")
author.text = "Jane Smith"
book.appendChild author

catalog.appendChild book
xmlDoc.appendChild catalog
WScript.Echo xmlDoc.xml
Set xmlDoc = Nothing

该脚本创建了一个带有嵌套“Book”元素的“Catalog”根元素。“Book”包含带有文本内容的“Title”和“Author”子元素。结果显示了正确的 XML 嵌套。这演示了使用 CreateElement 构建复杂结构。

创建和操作表单元素

此示例演示了如何动态创建 HTML 表单元素。它展示了如何创建输入元素、设置它们的属性并将它们添加到表单中。该示例创建了一个完整的表单结构。

form_elements.vbs
Set htmlDoc = CreateObject("htmlfile")
Set body = htmlDoc.body

Set form = htmlDoc.createElement("form")
form.setAttribute "action", "/submit"
form.setAttribute "method", "post"

Set input = htmlDoc.createElement("input")
input.setAttribute "type", "text"
input.setAttribute "name", "username"
form.appendChild input

Set submit = htmlDoc.createElement("input")
submit.setAttribute "type", "submit"
submit.setAttribute "value", "Send"
form.appendChild submit

body.appendChild form
WScript.Echo body.innerHTML
Set htmlDoc = Nothing

该脚本创建一个带有 action 和 method 属性的表单元素。然后创建文本输入和提交按钮元素。将这些添加到表单中,然后将表单附加到文档的 body。输出生成的 HTML 表单。

来源

MSXML DOM 文档

在本文中,我们探讨了 VBScript 中的 CreateElement 方法,涵盖了它的用法和实际应用。从简单的元素到复杂的嵌套结构,这些示例都展示了动态文档创建。通过这些知识,您可以增强脚本的动态内容生成能力。

作者

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

列出所有 VBScript 教程