IE中关于使用innerHTML加入HTML代码的问题
2014-06-25来源:易贤网

innerHTML属性在原生javascript中被用于在一个标签内部加入HTML代码,但是这个方法也不是在所有情况下适用,就比如在IE下面。

看如下代码:

代码如下:

<tbodyid='22'>

</tbody>

我们现在想通过innerHTML属性给tbody中间加入<tr>等HTML代码,会这么做:

代码如下:

<spanstyle="font-family:SimSun;font-size:14px;">document.getElementById('22').innerHTML='<tr></tr>'</span>

这样在Chrome下是OK的,但是换到IE下,就会报错,且IE下报的错并不指明是innerHTML出问题了,它只告诉你这一行代码有问题。为什么呢?

查看一下MS的MSDN就知道答案了,原文MSDN-innerHTML。在MS关于innerHTML说明的文章中,有这么一句:

“TheinnerHTMLpropertyisread-onlyonthecol,colGroup,frameSet,html,head,style,table,tBody,tFoot,tHead,title,andtrobjects.”说明在IE下,这些的innerHTML属性是只读的。

如果想在里面设置内容,只能设置纯文本,用innerText。

更多信息请查看IT技术专栏

2025公考·省考培训课程试听预约报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息