示例XML:
<cart subTotal="USD 3.50" >
<item productSubTotal="3.50" >
<pkProductItem>241</pkProductItem>
<itemCode>23455-green-XL</itemCode>
<itemName>my product ( green - XL-size )</itemName>
<qty>1</qty>
<itemUnitPrice>3.50</itemUnitPrice>
<totalItemPrice>3.50</totalItemPrice>
</item>
<item productSubTotal="9.90" >
<pkProductItem>123</pkProductItem>
<itemCode>23455-green-XL</itemCode>
<itemName>my product ( red - L-size )</itemName>
<qty>1</qty>
<itemUnitPrice>9.90</itemUnitPrice>
<totalItemPrice>9.90</totalItemPrice>
<options> </options>
</item>
</cart>
<finalTotalValue>3.50</finalTotalValue>
Dim myXML: myXML= <the full xml string above>
注意:上面的XML数据是使用字符串连接生成的。 上述XML数据不是从XML文件加载的。
生成后,如何使用ASP VBScript遍历读取数据?
如何检索<finalTotalValue>
?
Dim oXML, URI
Set oXML = Server.CreateObject("MSXML2.DomDocument")
oXML.loadXML(objXMLhttp.responseText)
URI = oXML.selectSingleNode("//itemCode").text
这似乎不起作用。
如何使用for循环检索购物车内的商品?
<cart>
内可以有多个项目。
如何检索标签内的值?例如:<item productSubTotal="9.90" >
我希望通过循环购物车XML中的产品获得9.90。
我感谢任何帮助。
答案 0 :(得分:1)
This tutorial应该有帮助。
要循环浏览购物车,您可以执行以下操作:
totalcost = 0
set Cart_node = oXML.getElementsByTagName("cart")
' Loop through the cart node
for each itemNodes in Cart_node(0).ChildNodes
' get the product sub total from each item node
productSubTotal = itemNodes.getAttribute("productSubTotal")
' Loop through each item node
for each item in itemNodes.ChildNodes
' if the node name is "totalItemPrice" add the value to the totalcost
if item.nodeName = "totalItemPrice" Then
totalcost = totalcost + item.Text
end if
Next
Next
' totalcost will be the total of all values in totalItemPrice nodes.
您可以像这样检索finalTotalValue
:
set final = oXML.getElementsByTagName("finalTotalValue")
finalTotalValue = final(0).text