2016-02-26 294 views
0

我的XPath返回一個值列表,我將其分配給VBScript中的變量,但結果只顯示一個值。XPath查詢應該返回多個結果,但只返回一個結果

我該如何處理?

Dim sXPath : sXPath = "/project//namespace/namespace/querySubject/queryItem[contains(., 'searchTerm')]/ancestor-or-self::*/name" 
Dim querySubject : Set querySubject = objMSXML.selectSingleNode(sXPath) 
If querySubject Is Nothing Then 
    WScript.Echo sXPath, "failed" 
Else 
    WScript.Echo "QuerySubjcet:", querySubject.text 

這裏的XPath返回一個列表:

Test 
Database Layer 
qsxyz 
qixyz

,但劇本的產量只有第一個字符串,即Test

回答

4

那麼,如果你使用selectSingleNode你得到一個單節點,您更希望

For Each node In objMSXML.selectNodes(sXPath) 
    WScript.Echo node.text 
Next