我在我的頁面上使用了一個iframe,它由具有輸入元素的表單組成。每個輸入元素都有一個onblur()事件,用於驗證輸入。IE 8 iFrame在第一次加載時會導致JavaScript錯誤
當我在IE 8中打開一個全新清除緩存的頁面時,它會產生一個像這樣的javascript錯誤。
document.getElementById(...)' is Null or not an Object
然而,當我檢查的形式,它是完全加載,我想訪問的呈現方式。 此外,當我重新加載整個頁面,我不再有任何錯誤。 另外,當我自己加載iframe的內容時,我也不會收到錯誤。
Firefox和Chrome不會拋出任何錯誤。
簡而言之,我得到的Javascript錯誤只出現在IE中,並且只有當我使用iframe來顯示窗體(這是強制性的)並且僅當第一次加載頁面時。
關於如何解決這個問題的任何想法?
我希望它不要太困惑。
編輯:
document.getElementById("vHint_"+fieldName).innerHTML=data;
字段名是輸入字段的ID。數據是驗證的返回值。 在這種情況下,數據是圖像標籤。 每個輸入字段都是標識爲「vHint _」+ fieldName的跨度標籤。
的事件附加這樣的:
所有的<input id="Jahr" class="input" type="text" onblur="validDate(this,'Jahr','_beginn')" maxlength="4" style="width:32px" value="" name="Jahr">
因此,'onload'你通過'getElementById()'做了一個循環,並附上'onblur',這裏是錯誤發生的地方? – user13500
用戶在輸入元素中輸入數據後觸發onblur。然後驗證輸入,然後使用getElementById()來顯示輸入是否正確。 – Drai
你可以添加你的代碼你使用的getElementId()錯誤在哪裏 – 2014-02-13 08:47:31