数组无法在IE上运行

时间:2018-06-11 18:01:22

标签: javascript arrays

感谢您对此代码的帮助,它适用于Google Chrome和Firefox,但在IE 11上加载页面时,控制台会向我显示此错误消息:

  

SCRIPT5009:'codigointerior'未定义。

这是我编码的方式吗?或者仅仅是IE兼容性问题?

idsbusqueda = new Array (codigointerior, nodeserie, fechaingreso, ubicacion, 
lugar, tipo, marca, modelo, direccion, dueño, zona, poste, color, 
descripcion);
for (var i = 0; i < idsbusqueda.length; i++) 
{
    idsbusqueda[i] = document.getElementById(idsbusqueda[i]);
}

感谢。

2 个答案:

答案 0 :(得分:1)

看起来像是DOM元素id的数组。如果是这样,则需要在每个id的名称周围引用

var idsbusqueda = new Array ('codigointerior', 'nodeserie', 'fechaingreso',         'ubicacion', 
'lugar', 'tipo', 'marca', 'modelo', 'direccion', 'dueño', 'zona', 'poste', 'color', 
'descripcion');
for (var i = 0; i < idsbusqueda.length; i++) 
{
    idsbusqueda[i] = document.getElementById(idsbusqueda[i]);
}

答案 1 :(得分:0)

感谢您的帮助。错误发生在这一部分:

idsbusqueda[i] = document.getElementById(idsbusqueda[i]);

getElementById方法需要一个String作为参数,以某种方式使用Firefox和Chrome工作,但不是IE。

idsbusqueda[i] = document.getElementById(String(idsbusqueda[i]));