Javascript 无法获取XML中的节点值,如何获取?
我目前正在使用w3cschools上的一个简单循环XML脚本,它非常有效:Javascript 无法获取XML中的节点值,如何获取?,javascript,html,xml,xpath,xml-parsing,Javascript,Html,Xml,Xpath,Xml Parsing,我目前正在使用w3cschools上的一个简单循环XML脚本,它非常有效: if (p1p2total == 5) { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
if (p1p2total == 5)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","xml/SearchRequest-12437.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByTagName("item");
for (i=0;i<x.length;i++)
{
document.write("<tr><td class='c3c1'>");
document.write(x[i].getElementsByTagName("key")[0].childNodes[0].nodeValue);
document.write("</td><td class='c3c2b'>");
document.write(x[i].getElementsByTagName("priority")[0].childNodes[0].nodeValue);
document.write("</td><td class='c3c3b'>");
document.write(x[i].getElementsByTagName("customfields")[0].getElementsByTagName("customfield")
[0].getAttributeNode("id").textContent);
document.write("</td></tr>");
}
}
那我怎么换线呢
document.write(x[i].getElementsByTagName("customfields")[0].getElementsByTagName("customfield")[0].getAttributeNode("id").textContent);
在javascript循环中提取我提供的Xpath的文本内容?我需要这个来为每个提取Xpath,就我而言,您只需调用
document.write(x[i].getElementsByTagName("customfields")[0].getElementsByTagName("customfield").text;
试试看。有几种从javascript读取和解析XML的方法。我不推荐学校学习。深入根源,为下一次努力;)
我希望这会有帮助,但这不起作用。我需要能够从名为customfieldvalue的customfield的子项中获取nodevalue。问题是我需要指定属性id为100800的customfield节点“谢谢你把我指给MDN,我现在要退房了!!还是没有运气。。。有没有一种方法可以只对一个条目使用xpath并使其正确循环?我在我的原始帖子中添加了一个编辑,其中包括指向我试图读取的节点的xpath。谢谢大家的帮助!
document.write(x[i].getElementsByTagName("customfields")[0].getElementsByTagName("customfield").text;