是用IE10以下吗? 在chrome内核的看有没有问题
IE9以下的的innerHTML 是只读
以前做动态生成表格兼容的时候就遇到过了,只能替换节点,在网上找了下修改了下有下面的代码,你看下参考
html里面这样画表格
JS代码这样写
下面是增加内容的函数:
function addReSpTab(tabContent)
{
var tabDom = document.getElementById("spvisWindow");
var tabbody = document.getElementById("tabbody");
if(tabbody.innerHTML!=null)
var tempbody =tabbody.innerHTML;
//IE不支持Tab的innerHTML,所以要区分对待
var isIE=!!window.ActiveXObject;
if(isIE)
{
addTableInnerHTML(tabDom, tabContent+tempbody);
}else
{
tabbody.innerHTML = tabContent + tabbody.innerHTML;
}
};
下面是IE使用的函数
//IE使用,增加一栏数据,替换渲染DOM
function addTableInnerHTML(table, html) {
var temp = table.ownerDocument.createElement('div');
temp.innerHTML = '
';if(table.tBodies.length == 0)
{
var tbody=document.createElement("tbody");
table.appendChild(tbody);
}
table.replaceChild(temp.firstChild.firstChild, table.tBodies[0]);
}
其中function addReSpTab(tabContent)的参数tabContent就是一串字符串
....其实这段代码核心就是增加
再替换tbody的内容。