Html javascript

实现表格的动态删除,当删除最后一行时提示暂时没有记录。

推荐使用Table对象提供的deleteRow,而不要用removeChild的方法,因为这样有更通用性。

假设tr的上层有tbody。那么很可能removeChild的方法失效。

//Delete a row while click one cell of it.

//obj mean one cell in the row u want to delete.
function deleteRow(obj){
    var clickRow = obj;
    while( clickRow.tagName != 'TR' ){
        clickRow = clickRow.parentNode;
    }
    var mytable = clickRow;
    while( mytable.tagName != 'TABLE' ){
        mytable = mytable.parentNode;
    }
    alert(mytable.tagName);
    mytable.deleteRow(clickRow.rowIndex);
    if( mytable.rows.length == 1 ){
        var newRow = mytable.insertRow(1);
        newRow.colSpan = mytable.rows[1].length;
        var cell = newRow.insertCell(0);
        cell.innerHTML="暂时没有记录";
        cell.colSpan = mytable.rows[1].length;
    }
}

对于添加行主要是注意继承前行的style属性。

posted @ 2011-11-15 14:18  papertiger  阅读(145)  评论(0)    收藏  举报