私は以下の多レベルXMLツリーを解析しようとしています。私は簡単に最初のレベルを得ることができますが、多くの検索の後で他のものを取得する方法を把握しているように見えることはできません。最終的には、各レベルのデータの完全なリストが各記事を繰り返し、記事IDを取得します。 誰かが私を助けてくれますか?古典的なASPでの高度なXMLの解析
XML:
<search>
<numresults>26707</numresults>
<pagesize>20</pagesize>
<articles>
<article id="998">
<title>my title 1</title>
<url>www.google.com</url>
<attributes>
<performer>
<id>122</id>
<url>www.yahoo.com</url>
<name>Elvis</name>
</performer>
</attributes>
</article>
<article id="999">
<title>my title 2</title>
<url>www.microsoft.com</url>
<attributes>
<performer>
<id>123</id>
<url>www.aol.com</url>
<name>Aerosmith</name>
</performer>
</attributes>
</article>
</articles>
</search>
ここでは、私はそれがレベル1を取得するためにXMLのために動作します持っているものです:いただければ幸いですすべてのヘルプ
Set objXML = CreateObject("Microsoft.XMLDOM")
Set objEvents = CreateObject("Microsoft.XMLDOM")
objXML.async = False
objXML.setProperty "ServerHTTPRequest", true
objXML.Load (sURL)
'CaSe sensitive
Set objEvents = objXML.getElementsByTagName("article")
NumEvents = objEvents.length 'zero based
Response.Write NumEvents
c = 0
Do Until c = NumEvents
Set objEventDetails = objEvents.item(c)
Title = Trim(objEventDetails.childNodes(0).text)
Response.Write Title & "<br>"
c = c + 1
Loop 'main XML feed loop
Set objEvents = Nothing
Set objXML = Nothing
を!
上記のサンプルXMLを実行すると、結果が表示されません。それはforループに入りません。エラーはありません。 – Dennis
こんにちはデニス、あなたはコードをデバッグして、何が起きているのか把握する必要があります。 XMLが有効であることを確認し、投稿した元のサンプルを修正する必要がありました。私はそこから始めるだろう。 –
私は知っています - 私は上記のXMLの例で修正されたタイプミスがありました。私はxmlをテストしました、それは有効です。これは実際にあなたのために走った?私は上記とあなたの* exact *コードを更新した同じ正確なxmlを使用しています。奇妙なことは、私は選択したノードと同様のコードを試して、それは動作しませんでした。私は最新のバージョンのIIS – Dennis