JS@DOM:向表格中动态添加行显示信息,做到滚动效果

最近在学习D3,很多时候都用到了表格,并且在js中动态地添加和删除表格,在这里总结一下js关于表格的操作:

首先要知道,js中没有提供关于列的操作,所以关于列的操作只能通过操作行来实现,比如获得列的数量,只能通过获得行的单元格数量来获得列数(这里也有缺陷,如果某个单元格设置了colspan属性,就会出错)。

table.rows.length//获得表格的行数

table.rows[0].cells.length//获得表格第一行的单元格的数量

table.insertRow(i)//插入第(i+1)行,行数(参数)从零开始

tr.insertCell(i)//插入第(i+1)个单元格,参数从零开始

还有一些不常用的方法,参见w3school提供的教程:HTML DOM Table对象

感谢showbo版主提供的简单实例:向表格中行显示信息,最多显示10行,超过10行则删除最上面的行(滚动显示信息的效果):

<input type="button" οnclick="addRow()" value="添加新行" /><br />
<table id="tb" border="1"></table>
<script>
    var total = 0;//测试用的,实际应用删除这个变量的引用
    function addRow() {
        var tb = document.getElementById('tb'), l = tb.rows.length;
        var tr = tb.insertRow(l);
        var td = tr.insertCell(0);
        td.innerHTML = 'xxxxxx'+total;//显示的内容,如果有多个单元格继续tr.insertCell(1),注意参数是从0开始的
        if (l >= 10) { //超过10行,删除第一行
            tr = tb.rows[0];
            tr.parentNode.removeChild(tr);
        }
        total++;
    }
</script>


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值