Как разобрать XML в ASP / vbscript? - PullRequest
       11

Как разобрать XML в ASP / vbscript?

3 голосов
/ 15 февраля 2010

У меня есть строка результата со следующей структурой

<items>
    <item>
       <id> 

Я должен перебрать вниз до идентификатора, и у меня там есть и другие теги. Я действительно не знаю, как это сделать в VBScript. И я хотел бы, чтобы все идентификаторы возвращались в массиве.

Неужели нет такого метода, как этот:

Dim doc
Dim thumbArray
Set doc = Server.CreateObject("MSXML2.DOMDocument")
doc.loadXML(searchresponse) 
thumbArray = doc.getElementsByTagName("id") 

for each tt in thumbArray
 Response.Write(tt & "<br>") 
next 

Особенно это:

getElementsByTagName("id") 

В частности, я хотел бы сделать что-то вроде этого:

<script type="text/javascript"> 
window.onload = function() {
    var content = document.getElementById("content"); 
    var ids = content.getElementsByTagName("thumbnail"); 
    var pics = document.getElementById("pics"); 
    var tts = []; 
    for(var i=0;i<ids.length;i++)
    {
        tts.push("<li>+ ids[i].innerHTML + </li>"); 
    }
    pics.innerHTML = tts.join(""); 


}
</script>

Ответы [ 2 ]

0 голосов
/ 15 февраля 2010

Попробуйте что-то вроде этого.

Set thumbArray = doc.getElementsByTagName("id") 

for index = 0 to thumbArray.Length
    Response.Write(thumbArray[index].nodeValue & "<br>") 
next 

Взгляните на это .

0 голосов
/ 15 февраля 2010

Прошло много времени с тех пор, как я работал с Vb Script, но это должно начать вас.

Dim doc
Dim xmlString
Dim nodes
Dim idArray

Set doc = Server.CreateObject("MSXML2.DOMDocument")
doc.loadXML xmlString

Set nodes = doc.selectNodes("items/item/id")

idArray = Array()
Redim idArray(nodes.length)

For i = 0 To nodes.length
    idArray(i) = nodes(i)
Next
...