使用Javascript读取XML文档

时间:2012-09-22 18:43:39

标签: javascript xml parsing

我正在读取托管在服务器上的XML数据,然后将其显示在HTML文档中,为此我执行以下操作:

var a1 = xml.getElementsByTagName('a1')[0].childNodes[0];
var A1 = document.getElementById("A1");
A1.innerHTML = a1.nodeValue;

其中a1是存储在服务器上的XML的id。这个程序我做了很多次,其中唯一改变的是字段的id,即我有这个:

var a1 = xml.getElementsByTagName('a1')[0].childNodes[0];
var a2 = xml.getElementsByTagName('a2')[0].childNodes[0];
var a3 = xml.getElementsByTagName('a3')[0].childNodes[0];
var a4 = xml.getElementsByTagName('a4')[0].childNodes[0];
var a5 = xml.getElementsByTagName('a5')[0].childNodes[0];

var A1 = document.getElementById("A1");
var A2 = document.getElementById("A2");
var A3 = document.getElementById("A3");
var A4 = document.getElementById("A4");
var A5 = document.getElementById("A5");

A1.innerHTML = a1.nodeValue;
A2.innerHTML = a2.nodeValue;
A3.innerHTML = a3.nodeValue;
A4.innerHTML = a4.nodeValue;
A5.innerHTML = a5.nodeValue;

一切正常并带来了预期的数据,但我的问题是,没有办法优化代码,不要使用尽可能多的行,即使用像

这样的东西
for (i=1;i<=5;i++){
    var a[i] = xml.getElementsByTagName('a[i]')[0].childNodes[0];
}

我不知道,是不是发生在我身上的事情,我是新来的,并且产生了怀疑,我感谢任何信息,问候!

1 个答案:

答案 0 :(得分:1)

a[i]来自哪里?您只需要字符串连接:

for(var i = 0; i <= 5; i++) {
    document.getElementById('a' + i).innerHTML = xml.getElementsByTagName('a' + i)[0].firstChild.nodeValue;
}