为什么IE在这一行抛出错误?
Why does IE throw an error on this line?
以下代码在Firefox中工作正常,但IE抛出错误:
Line: 41, Char: 3出现异常运行时错误。
为什么IE不能处理这个代码?我需要做些什么来修复它?
<script>
function addComparison()
{
var tableTR = document.getElementById('comparisons');
if(tableTR!=null)
{
var td2Add = "<td id='comp_2' valign='top' align='left' style='border-right: 1px solid black'>ADDED</td>";
alert(td2Add);
tableTR.innerHTML += td2Add; //LINE 41, the line IE8 errors on!
}
}
</script>
函数通过点击这个链接来调用:
<a href='javascript:addComparison();'>Add Comparison</a>
元素正在尝试更新:
<table>
<tr id='comparisons' valign='top' align='left'></tr>
</table>
在IE中'tr'元素的'innerHTML'是readOnly
该属性对所有对象都是可读/可写的,除了下面的for它是只读的:COL, COLGROUP, FRAMESET, HEAD, HTML, STYLE,TABLE, TBODY, TFOOT, head, TITLE, TR.
来源:http://msdn.microsoft.com/en-us/library/ms533897 (VS.85) . aspx
你可以使用innerHTML创建一个全新的表(可能不是你想做的)或使用document.createElement
和appendChild
/replaceChild
等来获得你想要的结果。
希望这对你有帮助!
相关文章:
- javascript中的数组出错
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 动态插入的表:JQuery未检测到最后一行
- 在Meteor项目中安装并包含npm模块后出错
- 解析JSON并从中删除对象会出错
- AngularJS指令出错-无法读取属性'编译'的未定义
- 在终端中运行 JavaScript 时(使用 rhino),如何使用 print() 函数在一行中打印
- 如何在Angular UI网格中选择下一行
- 通过单击动态加载的表中同一行的另一个字段来更新一行的字段
- 使用javascript在MVC中查找网格长度时出错
- 尝试调用AngularJS上的函数时出错
- Google 脚本:用于创建日历活动的脚本运行时不会出错,但不会执行任何操作
- 全局安装gull后出错
- 我在代码点火器中出错
- Java脚本将URL转换为已保存的URL时出错
- Backbone.js将模型绑定到视图时出错
- 将javascript代码转换为jquery代码时出错
- 如何在JavaScript中的一行中调用一个可能不存在的方法而不出错
- 试图将一行附加到表钛时出错