`
huanyq2008
  • 浏览: 171726 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

关于table等只读标签的innerHTML问题

阅读更多
function setTbodyHTML(id,tr){ 
	var dc = document.createElement('div'); 
	dc.innerHTML = ' <table> <tbody>'+tr+' </tbody> </table>'; 
	var oj = $(id); 
	while(oj.firstChild) oj.removeChild(oj.firstChild); 
	var tbody = dc.firstChild.firstChild; 
	while(tbody.firstChild) oj.appendChild(tbody.firstChild); 
} 

 

 

The property is read/write for all objects except the following, for which it is read-only: COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR.
由于table,tbody等标签的属性是只读的,无法使用innerHTML。可以使用上面的方法折中处理!
分享到:
评论

相关推荐

    IE 下的只读 innerHTML

    这个问题在IE浏览器中尤为突出,因为它对某些特定元素的`innerHTML`属性设为了只读。 在给定的问题中,开发者尝试通过JavaScript动态地向表格`&lt;table&gt;`的`&lt;tbody&gt;`元素添加新的`&lt;tr&gt;`行。在Firefox中,这样的操作是...

    IE bug table元素的innerHTML

    首先时飘忽不定的collapse的border,ie6偏偏...排查了半天,结果是IE的table元素为只读,不能使用innerHTML!!!! 同样为只读的元素还有COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, T

    ie中关于使用innerhtml加入html代码的问题.doc

    知识点四:解决innerHTML在IE中的只读问题的方法 由于innerHTML属性在IE中对特定元素是只读的,因此在这些元素上使用innerHTML来插入HTML代码时会导致错误。文档中提供了相应的解决方法,即如果需要向这些元素内部...

    IE6/7/8/9中Table/Select的innerHTML不能赋值的解决方法

    其中一个经典的问题就是尝试使用JavaScript的innerHTML属性来修改表格(Table)或选择列表(Select)的内容,但在IE6、7、8、9版本中,这可能会遇到一些挑战。innerHTML属性通常用于设置或获取元素的HTML内容,但在...

    IE中关于使用innerHTML加入HTML代码的问题

    innerHTML属性在特定元素上是只读的,其中包括`&lt;col&gt;`, `&lt;colgroup&gt;`, `&lt;frameset&gt;`, `&lt;html&gt;`, `&lt;head&gt;`, `&lt;style&gt;`, `&lt;table&gt;`, `&lt;tbody&gt;`, `&lt;tfoot&gt;`, `&lt;thead&gt;`, `&lt;title&gt;`, 和 `&lt;tr&gt;`等。这意味着在IE中,尝试...

    js动态生成行列,并能够动态改变只读属性

    这个过程涉及到DOM操作、数据管理以及事件处理等多个方面。以下是对这些知识点的详细说明: 1. **动态增加行列**:在HTML中,表格(`&lt;table&gt;`)是常用的数据展示容器。JavaScript可以用于动态创建和插入`&lt;tr&gt;`(行...

    innerHTML在IE中报错解决方案

    原因在于,IE9及以下版本对table及其子元素tr的innerHTML属性进行了限制,将其视为只读属性。这意味着可以读取这些元素的innerHTML,但无法通过innerHTML来修改它们。相比之下,td元素的innerHTML在IE9及以下版本是...

    IE6-IE9不支持table[removed]的解决方法分享

    `innerHTML`属性允许开发者设置或获取HTML元素内部的HTML内容,但在特定的元素,如`table`、`col`、`colGroup`等,IE6-9将其标记为只读,导致尝试修改时会抛出错误。 在标题和描述中提到的问题,主要涉及到IE6-9对`...

    IE6-IE9使用JSON、table[removed]所引发的问题

    本文主要探讨了两个在这些版本中常见的问题:JSON支持和使用`innerHTML`属性更新`table`元素时遇到的挑战,以及相应的解决方案。 首先,关于JSON的问题。在jQuery中使用JSON功能时,IE6-IE9在兼容模式下可能会报...

    javascript 异步的innerHTML使用分析

    4. **兼容DOM标准**:回调的节点可以通过DOM标准的方法(如appendChild)插入,解决了像IE中table、tbody等标签innerHTML只读的问题。 然而,这种技术并非万能,例如在某些浏览器中,特别是IE8及以下版本,将节点...

    IE6-IE9中tbody的innerHTML不能赋值的解决方法

    从微软的MSDN文档中可以了解到,在IE6-IE9中,`innerHTML`属性对于`col`、`colGroup`、`frameset`、`html`、`head`、`style`、`table`、`tBody`、`tFoot`、`tHead`、`title`和`tr`对象来说是只读的。因此,对于这些...

    JavaScript Table行定位效果

    给tr设置relative后就能相对table定位了,看来很简单啊,但问题是这个方法ie8和ff都无效,而且存在很多问题,所以很快就被抛弃了。 ps:该效果用来做tr的拖动会很方便。 接着想到的是给table插入一个新tr,克隆原来...

    jsp\(二)未知的运行时错误(ie6的未指明的错误) .doc

    在IE6及后续版本的IE浏览器中,这些元素被认为是只读的,因此直接修改它们的`innerHTML`属性会导致异常。 #### 异常代码示例 以下是触发异常的代码示例: ```html &lt;table id="t1"&gt;&lt;/table&gt; document....

    前段JS开发和DOM兼容问题大全

    9. 对于table标签的操作,IE浏览器不允许对其和tr元素的innerHTML属性赋值,且使用appendChild方法增加一个TR时也可能不起作用。在IE中,可以通过`insertRow`和`insertCell`方法动态添加行和单元格。 二、其他DOM...

    HTML对象简介

    通过`&lt;form&gt;`标签定义表单,通常包含多个子对象如`input`、`textarea`等。 - **Frame**: 框架对象,用于在一个页面中显示多个文档。`&lt;frame&gt;`标签定义了单个框架。 - **Input**: 输入对象,用于获取用户的输入。常见...

    javascript inneHTML的地雷

    回顾一下,IE会把标签内前面的一些空白kill掉,还会把它里面标签统统大写,会显示动态添加的属性,在某些元素中,它还是只读的。这个由IE发明的东西,最后被爆如此多缺陷,真是令人心寒。不过innerHTML还有一地雷,...

    javascript一些实用技巧小结

    注意,这两个属性是只读的,不能直接用来修改元素的位置。 `scrollLeft`和`scrollTop`属性用来获取或设置元素内容的滚动距离。`scrollLeft`是元素内容水平滚动的距离,而`scrollTop`是垂直滚动的距离。 针对iframe...

    js 小贴士一星期合集

    `innerHTML`属性在JavaScript中用于设置或获取元素的HTML内容,但在某些特定元素如`select`、`tr`、`table`等在IE浏览器下存在只读限制。示例中提供了一个兼容性的解决方案,通过创建一个临时的`div`元素,将...

Global site tag (gtag.js) - Google Analytics