文章探索:   分类:    关键字:  
  + 栏目导航
  + 相关文章
Ajax核心:XMLHTTP组件相关技术资料
远程获取内容,并将内容存在本地电脑..
xmlhttp组件获取远程文件并筛选出目标..
XMLHTTP对象及其方法
把HTML表单提交的数据转化成XML文件
利用XMLHTTP无刷新添加数据之Post篇
Js+Xml:不刷新页面获取对应网址的网页..
xml(元标记语言)学习基础一
Java语言编程中更新XML文档的常用方法..
简析JAVA中的XML编程
XML及其技术指南
XML教程(2)--XML元素与XML属性值
XML教程(1)--严格的语法
从XML到Java代码的数据绑定之一
神奇的XML--突破CGI权限的约束
基于XML的数据库总体分析
XML 中的常见问题(3)
XML 中的常见问题(2)
XML 中的常见问题(1)
一个简单的XML Schema的例子
Web设计中如何使用XML数据3
Web设计中如何使用XML数据2
Web设计中如何使用XML数据1
大话XML(3)XML的语法
构造未来Web页面的工具语言-- XML
不离开页面刷新数据
文件上传的实现
XML的产生
将XML文件链接至HTML网页
动态产生XML文档的几种方式


技术教程 -> XML教程 ->  
XML简明教程第10课 :在C++ XML DSO中使用主/细节特征
来源:转载   人气:730   录入时间:2007-11-8
    什么是主/细节特征?
   新的主/细节特征允许你连接到一个分层纪录集的当前记录上,这就意味着你可以把当前
   纪录的子元素连接到一个截然不同的表中。例如,考虑一下的XML:
   <orders>
    <order order_number="2233">
    <customer>
    <name>John Smith</name>
    <custID>192883</custID>
    </customer>
    <item>
    <name>Fly Swatter</name>
    <price>9.99</price>
    </item>
    </order>
    <order order_number="2234">
    <customer>
    <name>Marea Angela Castaneda</name>
    <custID>827145</custID>
    </customer>
    <item>
    <name>Fly Paper</name>
    <price>15.99</price>
    </item>
    </order>
    <order order_number="2235">
    <customer>
    <name>Amy Jones</name>
    <custID>998022</custID>
    </customer>
    <item>
    <name>Mosquito Netting</name>
    <price>38.99</price>
    </item>
    </order>
   </orders>
   你可以允许你的用户通过ID来定位订单,并显示(也仅能显示)当前订单上的客户和项
   目信息,你的用户并不能查看所有订单的信息——仅能查看自己感兴趣的。
   如何连接到细节?
   连接到层次结构中的底层(细节信息)的关键是了解你的数据的结构,上面的XML在根元
   素<orders>中含有有三个元素。基于XML DSO所采用的试探法,每一个订单都映射到一个
   包含"order_number"、 "customer"、 和 "item"等域的行集中。"order_number"列包含
   "order_number"属性的值,"customer"和"item"列包含指向各自的"customer"和"item"
   纪录集的指针。"customer"记录集中包含带有"name"和"custID"域的元素的值,"item"
   记录集中包含带有"name"和"price"域的元素的值。
   这样,在顶层("orders")纪录集中,你可以找到"order_number"的值,然后允许你的
   用户通过"order_number"定位订单。
   <P>ORDER NUMBER: <SPAN DATASRC="#xmlDoc" DATAFLD="order_number"></SPAN></P>
   现在再添加几个按钮来帮助用户浏览"orders"纪录集。
   <INPUT TYPE=BUTTON value="Previous Order" onclick="xmlDoc.recordset.movePrev
   ious()">
   <INPUT TYPE=BUTTON value="Next Order" onclick="xmlDoc.recordset.moveNext()">
   为了在当前纪录的子元素中检索这个值,创建一张表并把表的 DATASRC 属性设置为"#x
   mlDoc",就和上面所作的一样,但是这时也要把它的 DATAFLD 属性设置为 "customer"
   。这是为了告诉表连接到"customer"纪录集中的数据上,而"customer"纪录集由"order
   s"纪录集中的"customer"域的指针指向。
   <TABLE DATASRC="#xmlDoc" DATAFLD="customer" BORDER>
    <THEAD><TH>NAME</TH><TH>ID</TH></THEAD>
    <TR>
    <TD><SPAN DATAFLD="name"></SPAN></TD>
    <TD><SPAN DATAFLD="custID"></SPAN></TD>
    </TR>
   </TABLE>
   接着对"item"元素作同样的处理。
   <TABLE DATASRC="#xmlDoc" DATAFLD="item" BORDER=1>
    <THEAD><TR><TH>ITEM</TH><TH>PRICE</TH></TR></THEAD>
    <TR>
    <TD><SPAN DATAFLD="name"></SPAN></TD>
    <TD><SPAN DATAFLD="price"></SPAN></TD>
    </TR>
   </TABLE>
   现在,当用户点击按钮并移到纪录集中的后一个或前一个纪录时,表中的数据会相应的
   改变到当前纪录。
   
   




Copyright(C)2007-2024 广州市佳沛数码科技有限公司 版权所有
公司地址: 广州市荔湾区东漖北路560号511室
电话:020-81803473 传真:020-81544987