您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

无法在IE中的tbody上设置innerHTML

无法在IE中的tbody上设置innerHTML

没错,tbody元素上的innerHTML在IE中是readOnly

对于除以下对象以外的所有对象,该属性均为可读/写状态;对于以下对象,该属性为只读:COL,COLGROUP,FRAMESET,HEAD,HTML,STYLE,TABLE,TBODY,TFOOT,THEAD,TITLE,TR。

您可以执行以下操作来解决此问题:

function setTBodyInnerHTML(tbody, html) {
  var temp = tbody.ownerDocument.createElement('div');
  temp.innerHTML = '<table>' + html + '</table>';

  tbody.parentNode.replaceChild(temp.firstChild.firstChild, tbody);
}

基本上,它将创建一个临时节点,您将在其中注入fulltable。然后,它取代了tbodytbody从注入table。如果事实证明它很慢,则可以通过缓存temp而不是每次都创建它来使其更快。

其他 2022/1/1 18:17:16 有376人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶