记录下关于操作table相关的函数

记录下关于操作table相关的函数

月光魔力鸭

2018-08-30 13:44 阅读 358 喜欢 0 js操作table 表格的函数

介绍

在我们web开发过程中经常会碰到针对table的一些dom操作,这里整理一下关于这方面的知识点。当然我们可以通过jquery这样的插件来处理,或许会更简单一些,不过现在简单说下原生JS是如何操作的。

针对原生JS


主要有以下操作:

1.创建Table 2.创建row 3.创建cell 4.删除cell、row、table 5.美化table

创建table
var tableObject = document.getElementById('tableId');//获取表格对象,也可以通过createElement来进行创建
//var tableObject = document.createElement('TABLE');
//document.body.appendChild(tableObject);
//前提是,要将js放在dom加载完毕后执行,不然是会报错的。
创建row
var row = tableObject.insertRow(0);
//通过insertRow 方法创建一行,传递index参数,index表示创建第几行,
//0 表示第一行,同时返回一个已经创建的行对象,如果index 小于 0 或 大于表格
//中的行数,则会抛出 INDEX_SIZE_ERR 异常
创建cell
var cell = row.insertCell(0);
//这里的insertCell 几乎等同于insertRow ,不过一个是创建行,一个是创建列。
//同样会返回一个TableCell对象。
删除cell、row、 table
//删除列,通过行对象调用deleteCell方法
row.deleteCell(0);//index 参数为删除第几列
//删除行,通过table对象调用deleteRow 方法
tableObject.deleteRow(0);//index 参数为删除第几行
//删除table
tableObject.remove();//移除自身
document.body.removeChild(tableObject);//通过document移除子节点table
美化table

1.行列合并 2.样式的修改 3.属性的设置

//行列合并,属性为 rowSpan colSpan
cell.colSpan = 3;cell.rowSpan = 2;
//该单元格会合并3列,2行
//样式修改可以直接通过style进行修改
cell.style.color = 'red';//字体颜色为红色..等等,具体可以查看style对象。
//属性设置
cell.setAttribute('name','test');

转载请注明出处: https://chrunlee.cn/article/table-javascript-dom.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
如何通过js调用本地摄像头呢?获取后如何对视频进行截图呢?在这里跟大家做一个简易的Demo来实现以上几个功能。
做作业的时候,需要在手机上预览下,但是发现如果想在移动端上展示A4样子的作业还是挺麻烦的,最后还是准备通过图片来展示,然后移动端缩放呗。。
在开发过程中经常会碰到跨frame 去操作的需求,那么如何获得这个frame呢,这里写了一个工具类,用来通过name获得frame的jq对象
开发的项目中有使用到微信开发,由于之前偶尔才用一次,也是用的别人的地址和测试号,这里记录下自己的操作。防止后续遗忘。
jsQR 是一款纯粹的由javascript实现的二维码识别库,可以在浏览器端使用,也可以在后端node.js环境使用。我之前使用过其他的识别库,例如:qrcode-reader 或其他,在使用上都比较麻烦,而且识别率并不高。jsQR是后来发现的,感觉(没有实际对比验证)jsQR识别率要更高些,使用起来也更简单,不需要安装其他依赖软件。
通过canvas可以进行画图实现一些动画效果等,今天练习下通过canvas来实现一个简易的电子画板,可以在白板上进行画画,然后指定不同的颜色、线条粗细,加载不同的背景以及擦除效果。
项目中需要使用treegrid,找了下easyui 和 ext都有,但是项目用的框架是 byyui,如果为了treegrid 就把这些都加载的话,感觉不太合算。找了大家常用的基于jquery的treegrid.
对于web开发过程中的JS对象 Array ,我们真的充分使用了么?是不是理解了Array的全部?能够在合适的地点调用合适的函数,使用合适的属性?