我有一个xml文件,主根以:
开头<design title="standard Cards 3.5 x 2" >
<previews></previews>
<previews1></previews1>
<previews2></previews2>
</design>
我想读取xml文件并获取标题标签并分配选项值。
我还使用此w3school method获得了此design
个根标记。我想获取design
- &gt; title
并存储到我的选择框中:
这是我的代码:
var selectHTML = "";
selectHTML += "<select name='something' id='media' onchange='select();'>";
for (i = 0; i < total.length; i = i + 1) {
if (total[i] != '') {
xmlDoc = loadXMLDoc($loc);
var fruits = xmlDoc.documentElement.nodeName;
if (fruits) {
alert(fruits);
var name = xmlDoc.getElementsByTagName("design")
alert(name);
}
selectHTML += "<option value='" + total[i] + "'>" + name + "</option>";
}
}
selectHTML += "</select>";
此处xmlDoc=loadXMLDoc($loc);
正在调用xml文件的方法。我从w3school tutorial
我只是警告 name
,结果未定义。怎么解决这个?
我想将 name
值放入我的选择框选项值。如何使用javascript读取xml文件并放入选项值?
答案 0 :(得分:2)
尝试
var name = xmlDoc.getElementsByTagName("design");
var value = name[0].getAttribute('title')
alert(value);
同样在w3school示例中,loadXMLDoc
是一个手动定义的函数。它使用XMLHttpRequest()
和ActiveXObject("Microsoft.XMLHTTP")
根据您的浏览器类型。因此,如果您提出包含loadXMLDoc
定义,那么就会出现错误。
答案 1 :(得分:1)
我会对此采取行动。
从我可以告诉loadXMLDoc()将从与执行它的文档(在本例中为html页面)相同的上下文中加载xml文档
如果执行该JavaScript的页面与XMl文件位于不同的目录中,则无法加载。