Javascript在IE下設置innerHTML時出現未知的運行時錯誤的解決方法
復制代碼 代碼如下:
script
document.getElementById("trone").innerHTML = "tdhaha/td";
/script
tr id="trone"
/tr
在IE中,有時候會出現"未知的運行時錯誤(unknown runtime error)",而在firefox里不會 。
這主要是IE在對innerHTML進行寫操作的時候會檢查element是否具備做為這些內容中html對象容器的要求,比如如果你是在一個p里加入包含li的html代碼 , 這是會出錯的 。所以如果你發現這些錯誤出現,嘗試做兩件事情:
1、檢查你嘗試加到innerHTML的html代碼是否包含破損的html標簽,如沒有ul/ul包圍的li/li.
2、把你的容器改成那些比較“包容”的標簽 , 如span/span,div/div
特別注意的是tbody,table,tr標簽里面加正確格式的td標簽都有可能出錯,所以應該避免使用這些標簽作為容器 , 必要時可以用td作為容器,再嵌套一層表格 。
所以 , 如果是
td id="trone"/td使用document.getElementById("trone").innerHTML="new";就沒問題 。
解決方法你可以用javascript動態創建trtd等標簽,而不是用innerHTML直接改 。您可能感興趣的文章:js 未結束的字符串常量錯誤解決方法Jquery ajax不能解析json對象 , 報Invalid JSON錯誤的原因和解決方法IE6下出現JavaScript未結束的字符串常量錯誤的解決方法引入JS文件IE6報語法錯誤或缺少對象問題的解決方法js中的window.open返回object的錯誤的解決方法微信公眾號支付之坑:調用支付jsapi缺少參數 timeStamp等錯誤解決方法js傳參數受特殊字符影響錯誤的解決方法IE網頁js語法錯誤2行字符1、FF中正常的解決方法JS提示:Uncaught SyntaxError:Unexpected token ) 錯誤的解決方法JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL錯誤的解決方法
