选择follower标记,选择msxml中的SingleNode

选择follower标记,选择msxml中的SingleNode,xml,vbscript,xml-parsing,xmldocument,msxml,Xml,Vbscript,Xml Parsing,Xmldocument,Msxml,如何使用VBScript Msxml从该xml中选择介质 <reference_list> <reference_tag>VAT</reference_tag> <reference_value>123</reference_value> </reference_list> <reference_list> <reference_tag>PRIORITY</referen

如何使用VBScript Msxml从该xml中选择
介质

<reference_list>
    <reference_tag>VAT</reference_tag>
    <reference_value>123</reference_value>
</reference_list>
<reference_list>
    <reference_tag>PRIORITY</reference_tag>
    <reference_value>MEDIUM</reference_value>
</reference_list>

循环现在不是一个选项,我只能选择一个。

如果您确定只有一个目标节点,请使用。选择SingleNode-如中所示:

  Dim objXML : Set objXML = CreateObject("MSXML2.DOMDocument")
  objXML.async = false
  objXML.load "../data/24607195.xml"

  If objXML.parseError Then ' never without my check
     WScript.Echo objXML.parseError.reason
  Else
     'Find single reference_value MEDIUM
     Dim sXPath : sXPath = "/insert_shipment/reference_list/reference_value[. = 'MEDIUM']"
     Dim ndMedium : Set ndMedium = objXML.selectSingleNode(sXPath)
     If ndMedium Is Nothing Then ' never without my check
        WScript.Echo "fail:", sXPath
     Else
        WScript.Echo ndMedium.parentNode.firstChild.text, ndMedium.xml
     End If
  End If

谢谢,这正是我想要的;)
  Dim objXML : Set objXML = CreateObject("MSXML2.DOMDocument")
  objXML.async = false
  objXML.load "../data/24607195.xml"

  If objXML.parseError Then ' never without my check
     WScript.Echo objXML.parseError.reason
  Else
     'Find single reference_value MEDIUM
     Dim sXPath : sXPath = "/insert_shipment/reference_list/reference_value[. = 'MEDIUM']"
     Dim ndMedium : Set ndMedium = objXML.selectSingleNode(sXPath)
     If ndMedium Is Nothing Then ' never without my check
        WScript.Echo "fail:", sXPath
     Else
        WScript.Echo ndMedium.parentNode.firstChild.text, ndMedium.xml
     End If
  End If