javascript - 如何获取XML的值

标签 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 脚本中使用它?

最佳答案

如果您使用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;

关于javascript - 如何获取XML的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26402773/

相关文章:

javascript - vueJs中获取图片大小mounted

javascript - 如何使用 javascript 检索复选框的属性值

html - 如何确保 DIV 拉伸(stretch)以适合其内容?

java - 为什么我的应用程序会抛出空指针异常?

javascript - 可以通过 JavaScript 设置元素的 CSS 类吗?

html - ASP.NET MVC 动态表单

html - 悬停元素改变其他元素

xml - XQuery - 连接查询

xml - 找不到属性 layout_scrollFlags

javascript - JSON 数据作为字符串工作,但在对象时抛出内部错误