Hallo, ich habe folgendes Problem und es wäre cool wenn jmd. mir helfen könnte.
Mit einem XPath möchte ich die Autoren (Vor und Zuname) aus einer XML Datei heraus bekommen.
Code
<AuthorList CompleteYN="Y">
<Author ValidYN="Y">
<LastName>Qin</LastName>
<ForeName>Lei</ForeName>
<Initials>L</Initials>
</Author>
<Author ValidYN="Y">
<LastName>Zheng</LastName>
<ForeName>Jimin</ForeName>
<Initials>J</Initials>
</Author>
<Author ValidYN="Y">
<LastName>Grant</LastName>
<ForeName>Caroline E</ForeName>
<Initials>CE</Initials>
</Author>
<Author ValidYN="Y">
<LastName>Jia</LastName>
<ForeName>Zongchao</ForeName>
<Initials>Z</Initials>
</Author>
</AuthorList>
Alles anzeigen
den XMLHTTPRequest klappt auch, habe auch schon andere Informationen aus dem XML heraus bekommen. Das Problem sind die mehreren gleichen Tags mit der Bezeichnung Author worin sich dann Last und Forename befinden.
Das Javascript sieht dazu folgendermaßen aus:
Code
function setAuthor() {
var thisNode;
var AuthorPrefix = "/PubmedArticleSet/PubmedArticle/MedlineCitation/Article/AuthorList/Author/";
var interator = pubmedDoc.evaluate(AuthorPrefix + 'LastName', pubmedDoc, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null);
//var AuthorFirstName = pubmedDoc.evaluate(AuthorPrefix + 'ForeName', pubmedDoc, null, 7, null);
try {
var thisNode = iterator.iterateNext();
while (thisNode) {
alert(thisNode.textContent);
debugHere('Author=' + thisNode.toString);
thisNode = iterator.iterateNext();
}
}
catch (e) {
dump( 'Error: Document tree modified during iteration ' + e );
}
}
Alles anzeigen
Wenn ich die Extension ausführe führt er aber wohl das catch aus. Zumindest erscheint in der Shell dann: "Error: Document tree modified during iteration ReferenceError: iterator is not defined"
Hat jmd einen Tipp?
Gruß Eniac