我正在读取托管在服务器上的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];
}
我不知道,是不是发生在我身上的事情,我是新来的,并且产生了怀疑,我感谢任何信息,问候!
答案 0 :(得分:1)
a[i]
来自哪里?您只需要字符串连接:
for(var i = 0; i <= 5; i++) {
document.getElementById('a' + i).innerHTML = xml.getElementsByTagName('a' + i)[0].firstChild.nodeValue;
}