在页面设计器中处理文本

在许多Visual Basic应用程序中文本替换是一个经常的操作。对一个用户事件的响应,经常要更改显示在一个窗体元素中的文本。在基于窗体的Visual Basic应用程序中,通常通过设置所涉及到的控件的Text属性来完成这项工作。

对于一个 DHTML 应用程序中的HTML页面,文本替换的处理和在窗体上的不同。记住下面事实是非常重要的:HTML 页面中的一个标准文本元素是由一组标记和嵌入标记之间的文本组成的。例如,下面显示的是在 HTML 页面上一个典型标头元素:

<H3 ID=Subhead1>My Heading</H3>

<H3></H3> 标记告诉浏览器如何格式化和显示“标题”文本。ID=Subhead1部分是一个属性,它指定一个唯一的ID给标头使它可以编程。

当要对一个HTML页面上的文本进行更改时,必须指定是用单纯的文本来替换它还是用包含附加HTML标记的文本来替换它。此外,必须指示元素的原来标记是否受替换的影响。通过两组属性进行这项工作:innerText和outerText、innerHTML和outerHTML。

改变HTML标记内的文本

要改变HTML标记内的文本,使用innerText或innerHTML属性。这两种属性既替换了存在的文本又不改变文本周围的标记。它们的区别在于系统如何处理它们:

下面的表格显示了如何使用 innerText 和 innerHTML 属性改变一个元素:

  使用innerText 使用innerHTML
元素的原始HTML <H3 ID=Subhead1>My Heading</H3> <H3 ID=Subhead1>My Heading</H3>
替换代码
Subhead1.innerText="Heading One"
Subhead1.innerHTML="<I>Heading One</I>"
产生的HTML <H3 ID=Subhead1>Heading One</H3> <H3 Subhead1><I>Heading One</I></H3>
在浏览器中显示的元素
Heading One

Heading One

替换文本和标记

要更改文本和元素周围的标记,可以使用称为 outerText 和 outerHTML 的两种属性。这两种属性在HTML中对一个指定的元素与元素标记本身封闭的文本替换。象 innerText 和 innerHTML 一样,它们的差别在于系统如何处理它们:

下面表格显示了如何使用 outerText 和 outerHTML 属性单独用文本或者是文本和标记替换原始的元素:

  使用outerText 使用outerHTML
元素的原始HTML <DIV><H3 ID=Subhead1>My Heading</H3></DIV> <H3 ID=Subhead1>My Heading</H3>
替换代码
Subhead1.outerHTML=Heading Two
Subhead1.outerHTML=
<P ID=Newpar><U>Heading Two</U></P>
产生的HTML Heading Two <P ID=Newpar><U>Heading Two</U></P>
在浏览器中显示的元素
Heading Two

Heading Two

如果使用outerHTML来更改一个元素的ID,对旧的元素ID事件编写的任何Visual Basic 代码将不再工作。或者必须复制旧的代码到新元素ID的适当过程中或者保持ID不变。

注意 除了替换文本外,还可以使用insertAdjacentHTML属性追加文本到一个存在的元素。

详细信息 关于如何使用 innerText、outerText、innerHTML、outerHTML和insertAdjacentHTML.的详细信息,请参阅Internet Client SDK中“文档对象模型”部分的“属性”。