asp用SelectSingleNode怎么搜索节点

myshachong 2011-09-21 04:36:03
我想根据已知<ID> 来搜索出 name

比如 ID 是 2 出来 意大利


ID=Trim(Request("ID"))
Set readxml=Server.CreateObject("Microsoft.XMLDOM")
readxml.load(Server.MapPath("area.xml"))
Set datashow=readxml.SelectSingleNode("//data/ID[text()='"&ID&"']")



下面我应该怎么样把 对应的 NAME 显示出来



谢谢!



这个是文档 area.xml

<?xml version="1.0" encoding="gb2312"?>
<LIST>
<data>
<ID>1</ID>
<NAME>法国</NAME>
</data>
<data>
<ID>2</ID>
<NAME>意大利</NAME>
</data>
<data>
<ID>3</ID>
<NAME>英国</NAME>
</data>
<data>
<ID>4</ID>
<NAME>日本</NAME>
</data>
<data>
<ID>5</ID>
<NAME>美国</NAME>
</data>
<data>
<ID>6</ID>
<NAME>德国</NAME>
</data>

</LIST>
...全文
105 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
hookee 2011-09-21
  • 打赏
  • 举报
回复

sXML = "<LIST>" &_
" <data>" &_
" <ID>1</ID>" &_
" <NAME>法国</NAME>" &_
" </data>" &_
" <data>" &_
" <ID>2</ID>" &_
" <NAME>意大利</NAME>" &_
" </data>" &_
"</LIST>"
ID = "2"
Set oDoc = CreateObject("Msxml2.DOMDocument")
With oDoc
.async = False
.validateOnParse = False
.preserveWhiteSpace = False
.resolveExternals = False
.loadXML sXML
If .parseError.errorCode <> 0 Then
sErrMsg = .parseError.errorCode & "|" &_
.parseError.srcText & "|" & .parseError.reason
Response.Write sErrMsg
Response.End
End If
Set oNode = .selectSingleNode("//data[./ID/text()=" & ID & "]/NAME")
Response.Write oNode.text
Set oNode = Nothing
End With
Set oDoc = Nothing

叫我梁大侠 2011-09-21
  • 打赏
  • 举报
回复
帮顶!!!!!
<% '---------------------------------------------------------------- '程序简介: 完成asp语言对XML文档中指定节点文本的增加、删除、修改、查看 '入口参数: 无 '出口参数: 无 '------------------------------------------------ '函数名字:ConnectXml() '入口参数: filename 需要连接或打开的xml文件名 '出口参数: 无 '返回值 :ConnectXml=0,XMLMorntekDocument就是一个成功装载XML文档的对象了。 ' ConnectXml<>0,则打印错误信息strError '------------------------------------------------ dim XMLMorntekDocument function ConnectXml(filename) dim strSourceFile strSourceFile = Server.MapPath(filename) Set XMLMorntekDocument = Server.CreateObject("Microsoft.XMLDOM") XMLMorntekDocument.async = false XMLMorntekDocument.load(strSourceFile) ConnectXml=XMLMorntekDocument.parseerror.errorcode if XMLMorntekDocument.parseerror.errorcode<>0 then strError="<h2>error"&XMLMorntekDocument;.parseerror.errorcode&"" strError=strError&XMLMorntekDocument;.parseerror.reason&"
" strError=strError&XMLMorntekDocument;.parseerror.url&"
" strError=strError&XMLMorntekDocument;.parseerror.line&"
" strError=strError&XMLMorntekDocument;.parseerror.filepos&"
" strError=strError&XMLMorntekDocument;.parseerror.srcText&"
" response.write strError end if end function '------------------------------------------------ '函数名字:CloseXml() '入口参数: 无 '出口参数: 无 '------------------------------------------------ function CloseXml(XMLMorntekDocument) if IsObject(XMLMorntekDocument) then set XMLMorntekDocument=nothing end if end function '------------------------------------------------ '函数名字:SelectXmlNodeText(elementname) '入口参数: elementname 元素的名字 '出口参数: 无 网页教学网 '------------------------------------------------ function SelectXmlNodeText(elementname) elementname="//"&elementname; temp=XMLMorntekDocument.selectSingleNode(elementname).text selectXmlNodeText= server.htmlencode(temp) end function '------------------------------------------------ '函数名字:InsertXmlNodeText(befelementname,elementname,elementtext) '入口参数: elementname 插入的元素的名字 ' befelementname在此元素的名字前面插入元素 ' elementtext 插入的元素的文本 '出口参数: 无 '------------------------------------------------ function InsertXmlNodeText(befelementname,elementname,elementtext) dim befelement,element set befelement=XMLMorntekDocument.selectSingleNode("//"&befelementname;) set element= XMLMorntekDocument.createelement(elementname) befelement.insertBefore element,befelement.firstchild element.text=elementtext end function '------------------------------------------------ '函数名字:UpdateXmlNodeText(elementname,newelementtext) '入口参数: elementname 元素的名字 ' newelementtext元素的新文本 '出口参数: 无 '------------------------------------------------ function UpdateXmlNodeText(elementname,newelementtext) dim element set element=XMLMorntekDocument.selectSingleNode("//"&elementname;) element.text=newelementtext end function '------------------------------------------------ '函数名字:DeleteXmlNodeText(elementname) '入口参数: elementname 元素的名字 '出口参数: 无 '------------------------------------------------ function DeleteXmlNodeText(elementname) XMLMorntekDocument.selectSingleNode("//"&elementname;).text ="" end function %>

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧