不使用XSL从ASP查询xml
我有一些非常简单的XML:不使用XSL从ASP查询xml,xml,asp-classic,Xml,Asp Classic,我有一些非常简单的XML: <properties> <property> <name>BobFish</name> <explaination>Bob is a fish.</explaination> </property> <property> <name>DaveFish</name> <explaination>Dave i
<properties>
<property>
<name>BobFish</name>
<explaination>Bob is a fish.</explaination>
</property>
<property>
<name>DaveFish</name>
<explaination>Dave is a fish.</explaination>
</property>
这是我迄今为止所拥有的功能:
Function GetExplaination(strXMLFile, strName)
'Declare local variables
Dim objXML
Dim objNode
set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.load(strXMLFile)
Set objNode = objXML.SelectSingleNode("properties/property[name='" & strName & "']")
GetExplaination = "Nothing Yet"
End Function
所以我有包含我需要的数据的objNode。如何从中提取“Explaination”字段?首先向解释节点添加一个路径,以获取该路径,而不是整个属性节点
Set objNode = objXML.SelectSingleNode("properties/property[name='" & strName & "']/explanation")
接下来,返回节点的innertext以获取您要查找的文本
GetExplaination = objNode.Text
首先将路径添加到解释节点,以获取该路径,而不是整个属性节点
Set objNode = objXML.SelectSingleNode("properties/property[name='" & strName & "']/explanation")
接下来,返回节点的innertext以获取您要查找的文本
GetExplaination = objNode.Text
我不建议每次查找单个属性时都加载文档。提前加载和解析文档,并将文档引用传递给函数,而不是文件路径
我不建议每次查找单个属性时都加载文档。提前加载和解析文档,并将文档引用传递给函数,而不是文件路径
Response.Write GetExplaination("Fish.xml", "DaveFish")