例如:
Set objXML = CreateObject("Microsoft.XMLDOM")
objXML.async = False
objXML.validateOnParse = False
objXML.resolveExternals = False
objXML.load("http://www.w3schools.com/dom/books.xml")
'objXML.setProperty "SelectionLanguage", "XPath"
For Each x In objXML.selectNodes("//book[@category='cooking' and @category='children']")
WScript.Echo x.text
Next
For Each y In objXML.selectNodes("//book[position()<3]")
WScript.Echo y.text
Next
当objXML.setProperty "SelectionLanguage", "XPath"
被注释时,第一个 xpath 表达式(x 对象)返回有效,但第二个 xpath 表达式(y 对象)引发错误:
msxml3.dll (14, 1) : Unknown method.
//book[-->position()<--<3]
如果我取消注释objXML.setProperty "SelectionLanguage", "XPath"
这两个表达式都有效。
我的问题是何时必须显式设置 XPath 属性,或者在不设置此属性的情况下执行哪种表达式?