如何获取XML的值

时间:2014-10-16 11:04:17

标签: javascript html xml

我试图获取XML文件的价值,并在Java脚本代码中使用它。 我有这样简单的代码:

xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","data/names.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var speed_multiplier=xmlDoc.getElementsByTagName("speed");
document.getElementById("console").innerHTML=speed_multiplier[0];

使用XML结构:

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <speed>5</speed>
</root>

但它在html中显示[object Element]。我必须改变什么,所以它会显示在其中的值,所以我可以稍后在js脚本中使用它?

1 个答案:

答案 0 :(得分:0)

如果您使用getElementByTagName('speed')[0],则结果将是一个元素:标记名为<speed>的第一个元素。

您需要的是该元素的textContent,因此正确的代码是:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "data/names.xml");
xmlhttp.send();
var xmlDoc = xmlhttp.responseXML,
    speed_multiplier = xmlDoc.getElementsByTagName("speed")[0].textContent;
// here is what you need ^^
// now speed_multiplier is "5"
document.getElementById("console").innerHTML = speed_multiplier;