<tour-objects>
<object model="tourname" tn="1">
<field name="name" type="CharField">Tour Name 1</field>
<field name="tour_image" type="FileField">http://url.com/images/picture.jpg</field>
</object>
<object model="tourname" tn="2">
<field name="name" type="CharField">Tour Name 2</field>
</object>
<object model="tourname" tn="3">
<field name="name" type="CharField">Tour Name 3</field>
</object>
</tour-objects>
Проблема с разбором XML в ASP. Структура XML-кода выглядит как приведенная выше.
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.Async = False
objXML.SetProperty "ServerHTTPRequest", True
objXML.ResolveExternals = True
objXML.ValidateOnParse = True
objXML.Load(Server.MapPath("data.xml"))
Set Objects = objXML.SelectNodes("//tour-objects/object[@model='tourname']")
For i = 0 To Objects.Length-1
For Each objNode In Objects(i).childNodes
Select Case Lcase(objNode.nodeName)
Case "field"
fld = objNode.getAttribute("name")
Select Case fld
Case "name"
txt_name = objNode.text
Case "tour_image"
txt_tour_image = objNode.text
End Select
End Select
Next
Response.Write("name: " & txt_name &"<br>")
Response.Write("tour_image: " & txt_tour_image &"<br><br>")
Next
Tour_image не входит в каждый узел. Поэтому, когда я анализирую, я получаю следующую ошибку. Похоже, что раздел tour_image находится на 2-м и 3-м узлах.
name: Tour Name 1
tour_image: http://url.com/images/picture.jpg
name: Tour Name 2
tour_image: http://url.com/images/picture.jpg
name: Tour Name 3
tour_image: http://url.com/images/picture.jpg
Где я делаю ошибки? Я буду счастлив, если вы сможете мне помочь.