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错误的解决方法

    推荐阅读