asp 解析一个xml文件的公用函数集合
发布时间:2008-02-29 13:40:00
<%
'解析一个xml文件的公用函数集合
dim document
'装载一个xml文档,函数名Loaddocument(文件名)
function LoadDocument(filename)
xmlfile=server.Mappath(filename)
Set document = Server.CreateObject("Microsoft.XMLDOM")
document.async = false
document.load(xmlfile)
end function
call LoadDocument("test.xml")
'response.Write(SelectXmlNodeText("v"))
for i=1 to GetNodesNumber("vlist")
response.Write(FindAtrributeValue("vid","id")&"<br>")
next
'查询一个节点里的文本内容,函数名SelectXmlNodeText(节点名称)
function SelectXmlNodeText(elementname)
elementname="//"&elementname
temp=document.selectSingleNode(elementname).text
selectXmlNodeText= server.htmlencode(temp)
end function
'根据属性名查找一个节点的属性值,函数名FindAtrributeValue(节点名称,属性名称)
function FindAtrributeValue(elementname,atrributename)
elementname="//"&elementname
atrributename=atrributename
set NodeObj=document.selectSingleNode(elementname)
FindAtrributeValue=NodeObj.GetAttributeNode(atrributename).Nodevalue
end function
'取得某个节点的子节点的个数,函数名GetNodesNumber(节点名称)
function GetNodesNumber(elementname)
elementname="//"&elementname
set objnodes=document.SelectSingleNode(elementname).ChildNodes
GetNodesNumber=objnodes.length
'set objnodes=nothing
end function
'以一个OBJ的形式返回一个节点的第I个子节点,函数名GetObjChildNode(根节点名称,参数I)
function GetObjChildNodes(elementname,i)
elementname="//"&elementname
set objnodes=document.SelectSingleNode(elementname)
if objnodes.ChildNodes.length<i then
response.Write("参数越界")
else
set GetObjChildNodes=objnodes.childNodes(i-1)
end if
end function
'函数入口为一个节点对象,出口是在入口节点对象的基础做为根节点,返回的第i个子节点对象(OBJ)
function GetObjChildNode(obj,i)
if IsObject(obj) then
if obj.ChildNodes.length>0 then
set GetObjChildNode=obj.ChildNodes(i)
end if
end if
end function
'如果一个节点对象(OBJ)有孩子节点,该函数返回其孩子个数,即记录集长度
function GetObjChildNodesNumber(obj)
if obj.ChildNodes.length>0 then
GetObjChildNodesNumber=obj.ChildNodes.length
else
GetObjChildNodesNumber=0
end if
end function
'获取一个节点对象(OBJ)的属性值,函数入口为属性名
function GetObjAtrValue(obj,atrributename)
GetObjAtrValue=obj.GetAttributeNode(atrributename).Nodevalue
end function
'获取一个节点对象(OBJ)的属性值,函数入口为obj名称
function GetObjText(obj)
GetObjText=obj.text
end function
'遍历一个节点所有的子节点
function OverViewNodes(elementname)
end function
'获取一个节点属性的名称
function GetNodeAtrributeName()
end function
'获取一个子节点的名称
function GetChildNodeName()
end function
'Loaddocument("GetHotelDetailsResponse.xml")
'response.Write(FindAtrributeValue("Image","path")&"<br>")
'response.Write(GetNodesNumber("RoomType")&"<br>")
'response.Write(GetObjChildNodes("RoomType",2).nodename&"<br>")
%>
猜你喜欢
- AJAX初体验之上手篇AJAX是这两年蛮热的东西,我也凑凑热闹,前些天去找了些教程学学,下面就按整个处理过程把自己学的东西写写,不过,因为是
- 一个动态载入asp树源码。把 node.htc, style.css 保存与 css 目录下. index.asp subtree.asp
- 最近被“模块化”缠身,又是文章又是PPT的,被逼着想了很多相关的东西。整理下我这段时间对于“模块化”的思考,大多都是我自己从事页面重构这份工
- 译序:本文提到了一种很不错的实现跨浏览器圆角的解决方案,但是说的不够全面,前端观察最近将整理更多更全面的资源给大家,敬请期待。前一段时间,我
- 目前已经有很多生成html的新闻系统,但是都是用的模板,本函数实现把asp页面产生的html代码保存成为一个html文件,这样就没有必要改动
- 非常好的一篇技术文档,翻译自Louis Lazaris 2009年9月15日发表的《The Z-Index CSS Property: A
- 最近发现一常见的加载进度条(loadding)的问题,所以试试,觉得还不错,大家可以看下.当然这个只是一个效果而已!呵呵,用的着的时候,你就
- 如何让用户也能修改密码? 好了,照下面添加到你要添加的地方去:<%id = Request(&qu
- 获取图片宽度和高度的类,支持JPG,GIF,PNG,BMP我们可以使用这个类来处理图片的显示。<% Class
- 为什么能实现在线编辑呢? 首先需要ie 的支持,在 ie 5.5以后就有一个编辑状态,就是利用这个编辑状态,然后用javascript 来控
- 用VBS语言实现的一个简单网页计算器,功能:可以进行加法、减法、乘法、除法、取反、开根号、及指数运算。虽然简单但是比起windows xp自
- 任何熟悉SQL和关系数据库的人都遇见过大量的连接类型。最简单的说,连接(join)会把两个表的内容组合到一个虚拟表或者recordset内。
- 一个js用星投票的例子,不是常见的图片版,当然你如果会点js代码的话应该可以改为更加美观的图片投票,原理都一样。本程序只演示了读取星的个数,
- ORACLE访问SQL SERVER数据库有一篇《Oracle 异构服务实践》讲得很清楚。但里面没有讲如何设置访问多个SQL Server数
- 如何用Response.Write调用代替内嵌表达式?我们可以利用下面的代码,注意:代码的每一行对响应流有一次写操作,所有的代码都包含在一个
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 20 - A Few Mootools Tabs项
- 当今越来越多的应用程序迁移到web平台上。由于没有平台的限制和安装的要求,SAAS的模式看起来非常有吸引力。Web应用程序的界面设计,其核心
- 最近在研究品牌如何演绎,当然,看的时候没有忘记本行,分析了一下他们的交互设计~~路易威登LV上图采用胶片展示多组信息——大片展示品牌渲染。利
- javascript上下滑动广告效果 参数说明:客服果果(
- 这几年来,我们这个行业一直都在谈用户体验,以用户为中心的设计。“用户体验”是指用户访问网站的界面、功能、相关信息的可读性、操作的方便性,交互