2014-06-30 93 views
0

我有用JScript爲我實現的網站編寫的代碼。劇本非常簡單,沒有太花哨。它適用於Chrome和Firefox,但不會在IE中執行。我得到錯誤在IE中失敗的Javascript

SSCRIPT5007: Unable to get the value of 'style': Object is null of undefined. 

現在,我已經在網上查詢可能的解決方案。我看到最多的是我需要在我的meta標籤中包含X-UA兼容,但它已經在那裏。還有其他解決方案嗎?

具體來說,我的代碼失敗在這個部分:

var extra_options = document.getElementsByName("myExtraOptions"); 
for(thisindex = 0; thisindex < 7; thisindex++) { 
     extra_options[thisindex].style.display = 'none'; 
    } 
+3

而你的js代碼是...?我們無法猜測您的代碼。 –

+0

忘了補充那個部分吧,呃...... – user3334871

+0

你試圖修改樣式的元素不存在。 –

回答

1

你必須檢查,如果該元素存在類似:

for(thisindex = 0; thisindex < 7; thisindex++) { 
     if(extra_options[thisindex] !== undefined) { 
      extra_options[thisindex].style.display = 'none'; 
     } 
} 

,您可以檢查有多少元素存在同名:

var extra_options = document.getElementsByName("myExtraOptions"); 
alert(extra_options.length); 
+0

好的,做到了,你說得對,extra_options不存在。在聲明中,IE和Chrome/Firefox之間是否有區別,這些聲明不允許我這樣做? – user3334871

+0

我的意思是,我專門創建了名爲「myExtraOptions」的元素,所以我知道它們存在。 – user3334871

+0

不,IE和Chrome沒有區別,因爲JS對於這些瀏覽器是相同的。閱讀此:http://stackoverflow.com/questions/278719/getelementsbyname-in-ie7 –

-1

嘗試在您的頁面標題中放入ClientIDMode =「Static」。