2013-02-06 150 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

它是隨機的。有時我會看到錯誤,而其他時間我看不到。這對我來說很困惑。 –

相關問題