2013-02-06 197 views
3

我正在使用一个非常旧的web应用程序,该应用程序使用document.all.item遍历dom和 当我在localhost中部署应用程序时,它导致运行时错误,并且当我将它部署在我的机器以外的服务器上时,错误消失。在它下面的代码引发未知的运行时错误。什么原因或如何解决它?为什么document.all.item不能在本地主机上工作?

with(document.all) 

    item('fieldName').innerHTML = "Blah Blah"; // Error is on this line.? 

} 

当我试图在IE中调试。我可以访问该项目,但由于某些原因无法访问innerHTML。是因为IE还是别的?

回答

0

在Google Chrome上,HTMLAllCollection(来自document.all的结果)没有item属性。我想通过他们建议循环与for循环:

var items = document.all; 
var length = items.length; 
for(var i = 0; i < length; i++){ 
    //Do something with: items[i]; 
} 

行为变化可能是因为对HTMLAllCollection s,其中IE浏览器显然没有实现它实施item属性不符,您的服务器不。

+0

问题是关于在切换主机名时明显的行为改变。 –

+0

@ÁlvaroG.Vicario:详细阐述了一下。 – Cerbrus

+0

它是随机的。有时我会看到错误,而其他时间我看不到。这对我来说很困惑。 –

相关问题