首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

晕了,Javascript动态添加表不起作用解决方法

2012-03-04 
晕了,Javascript动态添加表不起作用首先页面中有个panel1的div,然后Javascript创建个table,并设置样式,最

晕了,Javascript动态添加表不起作用
首先页面中有个panel1的div,然后Javascript创建个table,并设置样式,最后添加到div总,代码是这样的:

<script   type= "text/javascript ">

        this._displayDiv   =   document.getElementById( "panel1 ");
               
                //Create   DOM   Element
                this._viewTable   =   document.createElement( "table ");
                this._viewTr   =   document.createElement( "tr ");
                this._viewTd1   =   document.createElement( "td ");
                this._viewTd2   =   document.createElement( "td ");
                //Set   Table   Style
                this._viewTable.width   =   "100% ";
                this._viewTable.height   =   "100% ";
                this._viewTable.border=   "0   px ";
                this._viewTable.cellpadding   =   "0   px ";
                this._viewTable.cellspacing   =   "0   px ";
                //Set   td1   Style
                this._viewTd1.width   =   "20   px ";
                this._viewTd1.innerHTML   =   "test ";
                //Set   td2   Style
                this._viewTd2.style.paddingLeft   =   "8   px ";
                this._viewTd2.style.fontSize   =   "12   px ";
                this._viewTd2.style.fontFamily   =   "Arial ";
                this._viewTd2.innserHTML   =   this._defaultText;
                //Join   Elements
                this._displayDiv.appendChild(this._viewTable);
                this._viewTable.appendChild(this._viewTr);
                this._viewTr.appendChild(this._viewTd1);
                this._viewTr.appendChild(this._viewTd2);
</script>

可是最后并没加进去。。。

[解决办法]
使用
table.insertRow(),row.insertCell()代替
document.createElement( "tr ");document.createElement( "td ");
之后不需要appendChild()
如此即可.
[解决办法]
在IE下,tr的parentElement是tbody,而不是table,所以你加不上去
再创建个tbody看看吧
[解决办法]
用insertRow和insertCell确实比较方便
//tr1
tempRow = this._viewTable.insertRow();


//td1
tempCell = tempRow.insertCell();
tempCell.width = "20 px ";
tempCell.innerHTML = "test ";
//td2
tempCell = tempRow.insertCell();
tempCell.style.cssText = "padding-left:8 px; font-size:12 px; color:#808080; font-family:Arial; ";
tempCell.innserHTML = this._defaultText;

热点排行