2

如果我有一个

var t = document.createTextNode(text)
parent.appendChild(t);

是否可以简单地更新内容t

我想在parent不使用removeChild,createTextNode和的情况下更改里面的文本appendChild。为什么我需要这个而不是仅仅使用innerHTML?因为我不想用 HTML 代码更新元素的内容,并且text可能包含特殊字符,例如应该由TextNodeDOM 方法解析的 < 或 &。

谢谢,
汤姆

4

3 回答 3

11

请注意,相邻的文本节点会合并为一个(因为实际上无法区分两个相邻的文本节点)。

文本节点的内容可以使用它的nodeValue属性进行更新(参见MDC)。

由于定义的文本节点不能包含任何标记,因此没有innerHTML属性。

于 2009-05-05T09:24:21.843 回答
2

如果您保留 TextNode 对象的实例(示例代码中的 t),那么您可以使用各种函数(如 replaceData()、substringData() 等)更改内容。

请参阅此页面以获得很好的参考: http: //msdn.microsoft.com/en-us/library/ms535905 (VS.85).aspx#

于 2009-05-05T09:17:23.360 回答
1
parent.innerText = text;
于 2009-05-05T09:31:20.237 回答