【问题标题】:Reading XML document with Javascript使用 Javascript 读取 XML 文档
【发布时间】:2012-09-22 18:43:39
【问题描述】:

我正在读取托管在服务器上的 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];
}

我不知道,是不是发生在我身上,我是新手,并且已经产生了疑问,我感谢任何信息,问候!

【问题讨论】:

    标签: javascript xml parsing


    【解决方案1】:

    a[i] 是从哪里来的?您所需要的只是字符串连接:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-01
      • 2010-09-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多