2009-09-02 8 views
0

サンプルXML:問題 - VBScriptの方法

<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を使用してデータを読み取るためのトラバース方法を教えてください。

  1. <finalTotalValue>の取得方法は?

    Dim oXML, URI 
    Set oXML = Server.CreateObject("MSXML2.DomDocument") 
    oXML.loadXML(objXMLhttp.responseText) 
    URI = oXML.selectSingleNode("//itemCode").text 
    

これは動作していないようです。

  1. forループを使用してカート内のアイテムを取得するにはどうすればよいですか? <cart>には複数のアイテムがあります。

  2. タグ内の値を取得するにはどうすればよいですか?例:<item productSubTotal="9.90" > カートXML内の製品をループすることで、9.90を取得したいと考えています。

私は何か助けていただきありがとうございます。

答えて

1

This tutorialが役立ちます。

set final = oXML.getElementsByTagName("finalTotalValue") 
finalTotalValue = final(0).text 
:あなたはこのような finalTotalValueを取得することができ

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. 

:あなたはこのような何かを行うことができカートをループし

関連する問題