日期:2014-05-16  浏览次数:20388 次

JS中关于cloneNode方法
这几天做了个比较大的课题,到此为止,现在算是完成了,大概也忙活了一个礼拜的时间,基本上就是看着身边同事都在玩,我一个人忙的不可开交,偶尔加加班,也完成了!前前后后也查了不少资料!正因为大家都不会,他们就叫我来处理这个!没办法,只能挑起大梁,好了,废话不多说,进入今天的正题:
在新做的这个课题上很大部分都是js写的多!于是乎在做到这个动态添加table的一行,使用了
cloneNode(true);
的这个方法,东西都做好了,自己也在FF下测试了,感觉基本好用了,准备提交代码的时候,在IE下测试了,最担心的问题终于出现了,IE下果然出问题了,debug到JS里面去看,原来出先问题的代码如下:
var lastRow = table.rows[table.rows.length-1];
var newRow = lastRow.cloneNode(true);
newRow.cells[0].innerHTML=parseInt(newRow.cells[0].innerHTML)+1;
table.tBodies[0].appendChild(newRow);

提示newRow.cells[0]undefined,后查了些资料,明白了原来是克隆的节点还没有加载在树上,于是修改这段代码
var lastRow = table.rows[table.rows.length-1];
var newRow = lastRow.cloneNode(true);
table.tBodies[0].appendChild(newRow);
newRow.cells[0].innerHTML=parseInt(newRow.cells[0].innerHTML)+1;

之后,测试IE,FF,Chrome好使!
特此做个记号!