2017-06-09 10 views
0

Ich habe eine XML-Datei, die ich versuche mit jQuery zu analysieren. Hier ist das Schema:Wie XML mit jQuery zu analysieren

<document> 
    <field> 
    <name>SUBJECT</name> 
    <value>Biography &amp; Autobiography</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Religion &amp; Spirituality</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Military</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Nonfiction</value> 
    </field> 
    <field> 
    <name>AUTHOR</name> 
    <value>Blehm, Eric</value> 
    </field> 
    <field> 
    <name>LANGUAGE</name> 
    <value>eng</value> 
    </field> 
    <field> 
    <name>DESCRIPTION</name> 
    <value>Fearless takes you deep into SEAL Team SIX, straight to the heart of blah blah blah </value> 
    </field> 
</document> 

<document> 
    <field> 
    <name>SUBJECT</name> 
    <value>Biography &amp; Autobiography</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Religion &amp; Spirituality</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Military</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Nonfiction</value> 
    </field> 
    <field> 
    <name>AUTHOR</name> 
    <value>Blehm, Eric</value> 
    </field> 
    <field> 
    <name>LANGUAGE</name> 
    <value>eng</value> 
    </field> 
    <field> 
    <name>DESCRIPTION</name> 
    <value>Fearless takes you deep into SEAL Team SIX, straight to the heart of blah blah blah </value> 
    </field> 
</document> 

<document> 
    <field> 
    <name>SUBJECT</name> 
    <value>Biography &amp; Autobiography</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Religion &amp; Spirituality</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Military</value> 
    </field> 
    <field> 
    <name>SUBJECT</name> 
    <value>Nonfiction</value> 
    </field> 
    <field> 
    <name>AUTHOR</name> 
    <value>Blehm, Eric</value> 
    </field> 
    <field> 
    <name>LANGUAGE</name> 
    <value>eng</value> 
    </field> 
    <field> 
    <name>DESCRIPTION</name> 
    <value>Fearless takes you deep into SEAL Team SIX, straight to the heart of blah blah blah </value> 
    </field> 
</document> 

Ich bin eine verschachtelte Schleife wie diese versuchen, aber die zweite var y als undefiniert kommen.

function myFunction(xml) 
{ 
    var i; 
    var j; 
    var xmlDoc = xml.responseXML; 
var table=""; 
    var x = xmlDoc.getElementsByTagName("document"); 
    for (i = 0; i < x.length; i++) 
    { 
    // table += "<h2>New Record</h2>"; 
    var y = x[i].getElementsByTagName("field").childNodes; 
    for (j= 0; j < y.length; j++); 
    { 
     table += "field name: " + y[j].getElementsByTagName("name")[0].childNodes[0].nodeValue + "<br>" 
     + "field value: " + 
     y[j].getElementsByTagName("value")[0].childNodes[0].nodeValue + 
     "<br><br>"; 
    } 

    } 
    document.getElementById("demo").innerHTML = table; 
} 

Ich versuche nur, eine Ausgabe für jetzt zu bekommen. Sobald ich das herausgefunden habe, füge ich einige Switch-Anweisungen hinzu und ziehe einfach die Felder, die ich anzeigen möchte.

+0

leider mein Schema abgeschnitten .. – Jim

+0

Wenn Sie Dinge wie Schemata oder Code schreiben, sollten sie immer in einem Codeblock eingeschlossen sein. – GrumpyCrouton

+0

SUBJECT Biography & Autobiography SUBJECT Religion & Spirituality SUBJECT Military SUBJECT Nonfiction AUTHOR 0.123. Blehm, Eric SPRACHE ger BESCHREIBUNG Fearless Sie tief in SEAL Team Six, direkt ins Herz von blablabla Jim

Antwort

-1

Sie können einen XML-JSON-Konverter verwenden und dann auf die JSON-Werte zugreifen, was einfacher ist. Hier gehen Sie http://goessner.net/download/prj/jsonxml/

dann werden Sie tun können: got

var xml = 'Your XML here'; 
var parsedxml = parseXml(xml); 
var json = xml2json(parsedxml); 
console.log(json.SUBJECT); 
+0

ok, ya, ich dachte, das sah eher aus wie json output, dann xml .. ich werde es versuchen. Danke. – Jim