0

我在IE兼容給我這個錯誤的一個小功能我寫道:JS:在IE錯誤,在Chrome和Firefox

消息:預期的對象行:13 字符:52代碼:0

這裏是我的代碼(請原諒格式):

function SectionTwo() 
{ 
    if (xmlhttp.readyState==4) { 
     if(xmlhttp.status==200) { 
      if(xmlhttp.responseText.indexOf("404 Error") >= 0) { } 
      else { 
       var idtagsArray = ["KT501-1_8","KT502-15_30","KT503-15_37","KT504-10_30","KT505-30_80","KT506-30_90","KT507-20_50","KT510-15_1440","KT512-0_1_2_3_4","KT513-30_80","KT514-0_1","KT520-0_1","KT525-0_1_2","KT526-0_1","KT527-0_9999","KT529-0_9999","KT531-0_9999","KT533-0_9999","KT535-0_250","KT536-0_9999","KT538-0_9999","KT548-0_1","KT549-0_1","KT550-102_120", "KT551-80_98","KT552-15_37","KT553-0_30","KT554-50_90","KT555-20_50","KT565-0_10","KT566-0_20","KT567-0_30","KT568-0_50","KT569-1_10","KT570-1_10","KT571-2_10","KT572-2_10","KT573-1_20","KT574-1_30"]; 
       for(var tag = 0; tag < idtagsArray.length; tag++) { 
        UpdateImage(idtagsArray[tag], xmlhttp.responseText); 
       } 
      } 
     } 
    } 
} 

最後一行是13行。我還叫SectionOne另一個功能是IDE除了它調用UpdatePoint而不是UpdateImage,並且那個不會出錯。

Chrome和Firefox不顯示任何JS錯誤並按預期工作。這裏是UpdateImage功能:

function UpdateImage(usediv, data) 
{ 
    if(data == null || data.length <= 0) { 
     update_value.innerText = 0; 
     return 
    } 

    // [A5:1][A6:1][A7:1][A8:1] 
    var start  = data.indexOf("[" + usediv + ":") + 2 + usediv.length ; 
    var end   = data.indexOf("]", start); 
    var data_value = data.slice(start , end) ; 

    if(data_value > 0) 
    { 
     document.getElementById(usediv).style.display = ""; 
    } 
    else 
    { 
     document.getElementById(usediv).style.display = "none"; 
    } 
} 

任何想法將不勝感激。

回答

0

難道這是中UpdateImage缺少分號嗎?

編輯

在這種情況下,你只是有一些晦澀的語法怪異,IE瀏覽器的困惑(發生的時間:))。

開始刪除代碼。擺脫所有嵌套的if(可能應該重構)。不要做for循環,只需撥打UpdateImage(idtagsArray[0], xmlhttp.responseText)即可。使您的idtagsArray只有1個元素長。等等

+0

這不是,雖然我錯過了謝謝。當我使UpdateImage成爲無代碼的存根函數時,錯誤仍然發生。 – pierdevara 2010-08-21 23:45:18

0

請問您的函數UpdateImagereturn之後是否缺少分號?

相關問題