innerHTML属性导致未知的运行时错误ie bug
2011-05-26 22:06
453 查看
在用 Javascript 更改 HTML 代码的时候,经常会用到某个对象的 innerHTML。在读写标签内的代码或字符串时非常方便。
但 IE 对这个属性的支持不太好,经常容易报出 “未知的运行时错误”,而同样的操作,在 FireFox 和 Opera 下面就都没问题。
到百度和 Google 查了下,发现是 IE 浏览器下,对 <table>、<tbody> 和 <tr> 等标签的 innerHTML 属性进行写操作时会报错。
应该是 IE 处理不当造成的。
目前没有很好的解决办法,只能采取改变 HTML 结构的方式,也就是说,不要对 <table> 等标签应用这个属性,改为对 <div>、<span> 和 <p> 等标签,就没问题了。
比如,运行下面的代码会报错:
<table border="0" cellspacing="0" cellpadding="0" id="Container">
<tr>
<td>Hello Leakon!</td>
</tr>
</table>
<script type="text/javascript">
document.getElementById('Container').innerHTML = '<tr><td>Good morning!</td></tr>';
</script>
改变一下实现方式,就没问题了:
<div id="Container">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Hello Leakon!</td>
</tr>
</table>
</div>
<script type="text/javascript">
document.getElementById('Container').innerHTML = '<table border="0" cellspacing="0" cellpadding="0"><tr><td>Good morning!</td></tr></table>';
</script>
但 IE 对这个属性的支持不太好,经常容易报出 “未知的运行时错误”,而同样的操作,在 FireFox 和 Opera 下面就都没问题。
到百度和 Google 查了下,发现是 IE 浏览器下,对 <table>、<tbody> 和 <tr> 等标签的 innerHTML 属性进行写操作时会报错。
应该是 IE 处理不当造成的。
目前没有很好的解决办法,只能采取改变 HTML 结构的方式,也就是说,不要对 <table> 等标签应用这个属性,改为对 <div>、<span> 和 <p> 等标签,就没问题了。
比如,运行下面的代码会报错:
<table border="0" cellspacing="0" cellpadding="0" id="Container">
<tr>
<td>Hello Leakon!</td>
</tr>
</table>
<script type="text/javascript">
document.getElementById('Container').innerHTML = '<tr><td>Good morning!</td></tr>';
</script>
改变一下实现方式,就没问题了:
<div id="Container">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Hello Leakon!</td>
</tr>
</table>
</div>
<script type="text/javascript">
document.getElementById('Container').innerHTML = '<table border="0" cellspacing="0" cellpadding="0"><tr><td>Good morning!</td></tr></table>';
</script>
One Response to “设置 innerHTML 属性 导致 未知的运行时错误 IE bug”
相关文章推荐
- innerHTML属性导致未知的运行时错误ie bug
- innerHTML 属性 导致 未知的运行时错误 IE bug
- 在IE中用js改变table的innerHTML属性报“未知的运行时错误”
- js的innerHTML及jquery的html() 在ie下不兼容“未知运行时错误” 的解决方案
- javascript 中innerHTML函数导致“ 未知的运行时错误”
- JavaScript在IE下设置innerHTML时出现"未知的运行时错误"
- Javascript在IE下设置innerHTML时出现"未知的运行时错误"
- JavaScript在IE下设置innerHTML时出现"未知的运行时错误"
- JavaScript在IE下设置innerHTML时出现"未知的运行时错误"
- Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
- Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
- JavaScript在IE下设置innerHTML时出现"未知的运行时错误"
- 在IE下给元素的innerHTML赋值,出现未知运行时错误的解决办法
- IE Bug 1 - 错误识别出现在javascript脚本中的字符串,导致HTML标签解析错误
- IE innerHTML 未知运行时错误
- JavaScript设置innerHTML时出现“未知的运行时错误”--我也遇上了
- innerHTML 引发“未知的运行时错误”
- duilib 修复padding属性导致其他控件自动计算宽高度错误的bug和导致自己宽高度错误的bug
- 设置innerHTML时出现"未知的运行时错误
- table的innerHTML “未知运行错误”。