XML DOM CDATASection 对象
CDATASection 对象表示文档中的 CDATA 区段。
实例
在下面的例子中,我们会使用 XML 文件books.xml,以及 JavaScript 函数 loadXMLDoc()。
createCDATASection() - 创建一个 CDATA 区段节点
<html>
<head>
<script type="text/javascript" src="/example/xdom/loadxmldoc.js"></script>
</head>
<body>
<script type="text/javascript">
xmlDoc=loadXMLDoc("/example/xdom/books.xml");
x=xmlDoc.getElementsByTagName("book");
newtext="Special Offer & Book Sale";
for (i=0;i<x.length;i++)
{
newCDATA=xmlDoc.createCDATASection(newtext);
x[i].appendChild(newCDATA);
}
for (i=0;i<x.length;i++)
{
document.write(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue);
document.write(" - ");
document.write(x[i].lastChild.nodeValue);
document.write("<br />");
}
</script>
</body>
</html>
CDATASection 对象
CDATASection 对象表示文档中的 CDATA Section。
CDATASection 接口是 Text 接口的子接口,没有定义任何自己的属性和方法。通过从 Node 接口继承 nodeValue 属性,或通过从 CharacterData 接口继承 data 属性,可以访问 CDATA Section 的文本内容。
虽然通常可以把 CDATASection 节点作为 Text 节点处理,但要注意,Node.normalize() 方法不并入相邻的 CDATA 部分。
使用 Document.createCDATASection() 来创建一个 CDATASection。
CDATA 区段包含了不会被解析器解析的文本。CDATA 区段中的标签不会被视为标记,同时实体也不会被展开。主要的目的是为了包含诸如 XML 片段之类的材料,而无需转义所有的分隔符。
在一个 CDATA 中唯一被识别的分隔符是 "]]>",它可标示 CDATA 区段的结束。CDATA 区段不能进行嵌套。
CDATASection 对象的属性
属性 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
data | 设置或返回此节点的文本。 | 6 | 1 | No | Yes |
length | 返回 CDATA 区段的长度。 | 6 | 1 | No | Yes |
CDATASection 对象的方法
方法 | 描述 | IE | F | O | W3C |
---|---|---|---|---|---|
appendData() | 向节点追加数据。 | 6 | 1 | No | Yes |
deleteData() | 从节点删除数据。 | 6 | 1 | No | Yes |
insertData() | 向节点中插入数据。 | 6 | 1 | No | Yes |
replaceData() | 替换节点中的数据。 | 6 | 1 | No | Yes |
splitText() | 把 CDATA 分拆为两个节点。 | 6 | 1 | No | |
substringData() | 从节点提取数据。 | 6 | 1 | No | Yes |