jQuery XML: zählt die Anzahl der Blattknoten
Wie kann ich die Anzahl der Blattknoten kommen aus einer bestimmten XML-Knoten mithilfe von jQuery?
Der XML-Code in Frage, die so ähnlich aussieht wie diese. Ich möchte, dass alle Blatt-Knoten kommen aus der <Errors>
Knoten.
<Errors>
<ErrorParentCat>
<ErrorTag/>
<ErrorTag2/>
</ErrorParentCat>
</Errors>
In diesem Beispiel möchte ich <ErrorTag/>
und <ErrorTag2/>
nur gezählt. Das Ergebnis sollte daher 2
. Auch <ErrorParentCat>
ist ein Beispiel-tag, es gibt viele innerhalb <Errors>
mit unterschiedlichen Namen.
Sobald ich die Nummer würde ich gerne eine Liste von diesen Blatt-Knoten auch, wenn möglich.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt, Sie haben bereits ein
XMLDocument
namensxml
:Können Sie auch einfach die XML-string direkt in der jQuery-Funktion:
jsfiddle demo →
Bearbeiten Sie sagte, Sie wollte eine Liste mit den Blatt-Knoten. Im code oben, Sie habe bereits diese:
Edit #2 Tim hat darauf hingewiesen (siehe Kommentare unten), Sie können nicht einfach übergeben, die XML-Zeichenfolge zu
$()
im IE (!@#$ing IE). Verwenden Sie die jQuery-1.5 Funktion$.parseXML()
zu analysieren, eine beliebige wohlgeformte XML-string in einXMLDocument
:neue jsfiddle demo →
parseXML()
Methode: api.jquery.com/jQuery.parseXML$.parseXML()
.$()
für das Parsen von XML ist schlecht: es ist nicht dafür konzipiert, es funktioniert nicht, und jQuery bietet nun eine Funktion, um es zu tun.$.parseXML()
.Lasten von Möglichkeiten, dies zu tun:
und die XML-load-Funktion:
ErrorParentCat
war ein Beispiel, es kann viele