`
有崖生110
  • 浏览: 55252 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

xml复习(三)

    博客分类:
  • xml
 
阅读更多

 

获取元素的值

下面的代码检索第一个 <title> 元素的文本值:

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];

txt=x.nodeValue;

 

获取属性的值

下面的代码检索第一个 <title> 元素的 "lang" 属性的文本值:

txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");

 

改变元素的值

下面的代码改变第一个 <title> 元素的文本值:

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];

x.nodeValue="Easy Cooking";

 

改变属性的值

setAttribute() 方法可用于改变已有属性的值,或创建一个新属性。

下面的代码向每个 <book> 元素添加了名为 "edition" 的新属性(值是 "first"):

x=xmlDoc.getElementsByTagName("book");

 

for(i=0;i<x.length;i++)

  {

  x[i].setAttribute("edition","first");

  }

 

创建元素

createElement() 方法创建新的元素节点。

createTextNode() 方法创建新的文本节点。

appendChild() 方法向节点添加子节点(在最后一个子节点之后)。

如需创建带有文本内容的新元素,需要同时创建元素节点和文本节点。

下面的代码创建了一个元素 (<edition>),然后把它添加到第一个 <book> 元素中:

newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("First");
newel.appendChild(newtext);
 
x=xmlDoc.getElementsByTagName("book");
x[0].appendChild(newel);

例子解释:

1.    创建 <edition> 元素

2.    创建值为 "First" 的文本节点

3.    把这个文本节点追加到 <edition> 元素

4.    <edition> 元素追加到第一个 <book> 元素

 

删除元素

removeChild() 方法删除指定的节点(或元素)。

下面的代码片段将删除第一个 <book> 元素中的第一个节点:

x=xmlDoc.getElementsByTagName("book")[0];

 

x.removeChild(x.childNodes[0]);

 

XML 数据岛实例

XML 文档绑定到 HTML 文档中的一个 <xml> 标签。id 属性定义数据岛的标识符,而 src 属性指向 XML 文件:

<html>

<body>

 

<xml id="cdcat" src="cd_catalog.xml"></xml>

 

<table border="1" datasrc="#cdcat">

<tr>

<td><span datafld="ARTIST"></span></td>

<td><span datafld="TITLE"></span></td>

</tr>

</table>

 

</body>

</html>

<table> 标签的 datasrc 属性把 HTML 表格绑定到 XML 数据岛。

<span> 标签允许 datafld 属性引用要显示的 XML 元素。在这个例子中,要引用的是 "ARTIST" "TITLE"。当读取 XML 时,会为每个 <CD> 元素创建相应的表格行。

 

 

"saveForm.asp" 文件是一个 ASP 页面,可循环遍表单域,并把它们的值存储在一个 XML 文件中:

<%
dim xmlDoc
dim rootEl,fieldName,fieldValue,attID
dim p,i
 
'如果有错误发生,不允许程序终止
On Error Resume Next
 
Set xmlDoc = server.CreateObject("Microsoft.XMLDOM")
xmlDoc.preserveWhiteSpace=true
 
'创建并向文档添加根元素
Set rootEl = xmlDoc.createElement("customer")
xmlDoc.appendChild rootEl
 
'循环遍历 Form 
for i = 1 To Request.Form.Count
  '除去表单中的 button 元素
  if instr(1,Request.Form.Key(i),"btn_")=0 then
    '创建 field  value 元素,以及 id 属性
    Set fieldName = xmlDoc.createElement("field")
    Set fieldValue = xmlDoc.createElement("value")
    Set attID = xmlDoc.createAttribute("id")
    '把当前表单域的名称设置为 id 属性的值
    attID.Text = Request.Form.Key(i)
    ' id 属性添加到 field 元素
    fieldName.setAttributeNode attID
    '把当前表单域的值设置为 value 元素的值
    fieldValue.Text = Request.Form(i)
    ' field 元素作为根元素的子元素进行添加
    rootEl.appendChild fieldName
    ' value 元素作为 field 元素的子元素进行添加
    fieldName.appendChild fieldValue
  end if
next
 
'添加 XML processing instruction
'并把它加到根元素之前
Set p = xmlDoc.createProcessingInstruction("xml","version='1.0'")
xmlDoc.insertBefore p,xmlDoc.childNodes(0)
 
'保存 XML 文件
xmlDoc.save "c:\Customer.xml"
 
'释放所有的对象引用
set xmlDoc=nothing
set rootEl=nothing
set fieldName=nothing
set fieldValue=nothing
set attID=nothing
set p=nothing
 
'测试是否有错误发生
if err.number<>0 then
  response.write("Error: No information saved.")
else
  response.write("Your information has been saved.")
end if
%>

注释:如果指定的 XML 文件名已经存在,那个文件会被覆盖!

 

分享到:
评论

相关推荐

    XML总复习 让你完全掌握

    XML总复习 让你完全掌握 让你不再为学习XML 而感到烦恼 学习XML原来也会这么简单

    XML复习资料

    ### XML复习资料知识点详解 #### 第一章:XML基础概览 **知识点1:HTML与XML的区别** - **HTML用途**:主要用于展示数据,告诉浏览器如何显示这些数据。 - **XML用途**:用于描述数据,定义数据的含义。 **知识点...

    xml期末复习题

    - **XML文档**:Schema本身就是一种形式良好的XML文档,遵循XML语法,易于处理和验证,确保了数据的一致性和标准化。 总结而言,XML及其相关技术(如Schema、XLink、XSL)为数据的存储、传输、描述和展现提供了强大...

    2011XML复习题

    XML 基础知识点总结 XML(Extensible Markup Language,扩展标记语言)是一种标记语言,用于存储和传输数据。它的主要特点是自描述、自解释、平台独立和语言独立。 一、XML 文档结构 XML 文档由两个部分组成:...

    XML 期末考试复习题与考试试题

    ### XML 期末考试复习题与考试试题知识点详解 #### 知识点一:XML 的定义与特点 **定义**:XML(eXtensible Markup Language,可扩展标记语言)是一种由万维网联盟(World Wide Web Consortium,W3C)制定的数据...

    xml复习.pdf

    XML,全称可扩展标记语言(Extensible Markup Language),是一种用于描述数据的标记语言,它在IT领域中扮演着重要角色。XML的设计目的是传输和存储数据,而不是显示数据,这与HTML(超文本标记语言)的主要功能不同...

    XML期末复习试题完整版(附答案)

    ### XML期末复习试题知识点详解 #### 1. XML与HTML的区别 XML(eXtensible Markup Language)与HTML(HyperText Markup Language)虽然都属于标记语言,但它们的设计目的和应用领域有所不同。XML主要用于存储和...

    XML课程复习要点及练习试卷

    三、XML命名规则 1. 名称空间:XML允许使用名称空间来避免标签名冲突,通过`xmlns:`前缀指定。 2. 名称限制:元素和属性名不能以数字开头,且不能包含空格、冒号、等号、引号和其他特殊字符。 四、XML语法规范 1. ...

    XML期末考试复习题

    工业大学的信息管理专业xml期末考试复习资料、

    XML复习题.doc

    XML,全称Extensible Markup Language,是一种用于标记数据的语言,其设计目的是传输和存储数据,而非显示数据。本文主要探讨XML与其他技术的区别、Schema的概念及其优势、DOM和SAX解析器的特点,以及XSL的转换模式...

    暴基础的xml复习题

    XML,全称可扩展标记语言(Extensible Markup Language),是一种基于SGML(Standard Generalized Markup Language)设计的简化版标记语言,由W3C(万维网联盟)制定。XML的主要目的是为了传输和存储数据,而不是...

    xml知识总结

    **XML解析方式**通常有三种: 1. **DOM解析**:将整个XML文档加载到内存,形成一个树形结构,便于遍历和操作。 2. **SAX解析**:事件驱动,逐行读取XML文档,对每个元素、属性等触发相应事件,节省内存。 3. **StAX...

    XML期末复习综合测试题

    从给定的文件信息中,我们可以总结出一系列与XML相关的知识点,这些知识点涵盖了XML的基础概念、文档结构、DTD文档、命名空间、XML Schema、CSS样式、XPath与XSLT以及DOM的基本原理。以下是对这些知识点的详细说明:...

    XML考试复习大纲及参考

    ### XML考试复习大纲知识点解析 #### 第一章:标记语言的发展与XML概览 - **1.1 标记语言的发展** - **SGML的起源与组成**:SGML(Standard Generalized Markup Language)是一种用于定义文档结构的元语言,是XML...

    XML复习资料,考试卷

    XML,全称为可扩展标记语言(Extensible Markup Language),是一种元标记语言,它的主要功能是描述数据的结构和内容,使得数据在不同的系统间交换和处理变得更加方便。XML的设计目标是为了传输和存储数据,而非显示...

    html&xml期末复习资料.pdf

    本复习资料涵盖了 HTML 和 XML 的关键概念,特别是 XML Schema 的使用、XML 文档结构的定义、以及相关的验证技术和编程接口。 1. XML Schema 连接 XML 文档实例 正确将 XML Schema 连接到 XML 文档实例的方法是通过...

    XML+Web+Service开发教程及复习指南

    XML+Web+Service开发教程及复习指南,XML+Web+Service开发教程及复习指南XML+Web+Service开发教程及复习指南

    youdao有道生词本批量导入导入XML生成XML文件

    把单词批量转换成XML,这个XML可以直接导入到有道单词本中速度相当快 有道生词本 XML模板 成千上万个单词也就是几秒钟的时间就转换成XML文件了 分析 ...progress 复习进度 0 如果为 -1表示未加入复习

    XML基础教程(自己整理的)

    三、XML命名规则 XML的元素、属性、命名空间等必须遵循严格的命名规则: 1. 名称区分大小写。 2. 名称不能以数字开头。 3. 除字母、数字、下划线、点和冒号外,不能包含其他特殊字符。 4. 空格不允许出现在名称中。 ...

    xml web service 复习题

    XML Web Service 是一种基于互联网的、能够通过标准的XML(可扩展标记语言)进行通信的服务。它允许不同系统之间的数据交换,促进了分布式应用程序的构建。本文将深入探讨XML Web Service的相关知识点。 1. 分布式...

Global site tag (gtag.js) - Google Analytics