JS表格的动态操作完整示例


Posted in Javascript onJanuary 13, 2020

本文实例讲述了JS表格的动态操作。分享给大家供大家参考,具体如下:

<html>
    <head>
        <title>js-表格的动态操作</title>
        <meta charset="UTF-8"/>
        <style type="text/css">
            #ta tr{
                height: 20px;
            }
            #t1{
                font-weight: bold;
                /*align-content: center;*/
                /*不能设置文本内容居中*/
            }
        </style>
        <script type="text/javascript">
            function delectOper(btn){
                //获取table对象,我们用其进行其对子元素的操作
                var ta=document.getElementById("ta")
                //获取其父类对象
                var tr=btn.parentNode.parentNode;  //我们进行删除操作是删除其所在的行,所以我们用两次parent操作,第一层得到其所在的列(单元格),再进一层得到其所在的行对象
                //执行删除操作
                ta.deleteRow(tr.rowIndex);  //进行删除操作时,我们用父类对象删除子类对象,
                //注:对于div等对象我们可以使用remove方法,但是对于表格的属性我们利用delete进行操作,而且我们利用他的rowIndex(行号)而不是其id亦或是对象
                //我们没法对每一个行设置一个id所以用这种方法(通过调入对象找到其父类对象)更加的方便
            }
            function changeOper(n){
//                var n=n;
                //获取修改的位置对象
                var cell=document.getElementById("cell"+n);
                //进行一定的限制(只有是数字的情况下才能进行拼接)
                if(!isNaN(Number(cell.innerHTML))){//isNAN如果是true则表示数值不是数字,如果不添加就会产生连续点击修改时出现把源码拼接上的情况
                //修改对象的类型
                cell.innerHTML="<input type='text' value='"+cell.innerHTML+"' onblur='changeOper2(this,this.parentNode)'/>" //利用value='"+cell.innerHTML+"'可以实现内容的拼接注意:其内部的值是"+cell.innerHTML+"一个拼接量
                //注意格式:在""内部的要用'',        //不知道为什么在内部不能直接把cell和n当参数传出去,但是可以传this对象,所以对应的我们利用this,简介传出其父对象
                }  //还有一个bug:当用户输入的值是字符(不是数字),其也会进行value的赋值,但是无法再触发修改按键,只能检索原对象的内容类型,无法检索用户的
            }
            function changeOper2(inp,cell){
                //获取修改位置对象
//                var cell=document.getElementById("cell"+n);
                //修改对象的类型
                cell.innerHTML=inp.value;  //通过对象获得用户修改获得value值
            }
            //明白了:document可以调用任何的id,(好比其他都是全局变量一样),但是他的局限是获取的方法有限,必须有特定的属性才能获取
            //document。innerHTML是对其内部的内容进行重写。
        </script>
    </head>
    <body>
        <h3 align="center">表格的动态操作</h3>
        <hr />
        <table border="1px" id="ta" align="center">  <!--align可以直接把整个表格居中-->
            <tr id="t1" align="center">
                <td width="200px">Animation</td>
                <td width="100px">上映年份</td>
                <td width="100px">评分(10分)</td>
                <td width="200px">投币</td>
                <td width="200px">操作</td>
            </tr>
            <tr align="center">
                <td>clannad</td>
                <td>2008</td>
                <td>9.9</td>
                <td id="cell2">100</td>
                <td>
                    <input type="button" name="" id="" value="修改" onclick="changeOper(2)"/>
                    <input type="button" name="" id="" value="删除" onclick="delectOper(this)"/>
                </td>
            </tr>
            <tr align="center">
                <td>月色真美</td>
                <td>2017</td>
                <td>9.4</td>
                <td id="cell3">70</td>
                <td>
                    <input type="button" name="" id="" value="修改" onclick="changeOper(3)"/>
                    <input type="button" name="" id="" value="删除" onclick="delectOper(this)"/>
                </td>
            </tr>
            <tr align="center">
                <td>境界的彼方</td>
                <td>2013</td>
                <td>9.4</td>
                <td id="cell4">60</td>
                <td>
                    <input type="button" name="" id="" value="修改" onclick="changeOper(4)"/>
                    <input type="button" name="" id="" value="删除" onclick="delectOper(this)"/>
                </td>
            </tr>
        </table>
    </body>
</html>

运行效果:

JS表格的动态操作完整示例

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript操作DOM技巧总结》、《JavaScript页面元素操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery 跨域访问问题解决方法
Dec 02 Javascript
jQuery之网页换肤实现代码
Apr 30 Javascript
Javascript中3个需要注意的运算符
Apr 02 Javascript
Javascript常用小技巧汇总
Jun 24 Javascript
JavaScript6 let 新语法优势介绍
Jul 15 Javascript
任意Json转成无序列表的方法示例
Dec 09 Javascript
Bootstrap CSS布局之按钮
Dec 17 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
Aug 12 Javascript
vue鼠标悬停事件实例详解
Apr 01 Javascript
详解js根据百度地图提供经纬度计算两点距离
May 13 Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
Dec 25 jQuery
手把手教您实现react异步加载高阶组件
Apr 07 Javascript
JavaScript实现模态对话框实例
Jan 13 #Javascript
JS动态图片的实现方法完整示例
Jan 13 #Javascript
js实现拖动缓动效果
Jan 13 #Javascript
Vue.js中的高级面试题及答案
Jan 13 #Javascript
深入理解redux之compose的具体应用
Jan 12 #Javascript
2019年度web前端面试题总结(主要为Vue面试题)
Jan 12 #Javascript
html2canvas属性和使用方法以及如何使用html2canvas将HTML内容写入Canvas生成图片
Jan 12 #Javascript
You might like
php与php MySQL 之间的关系
2009/07/17 PHP
php页码形式分页函数支持静态化地址及ajax分页
2014/03/28 PHP
PHP表单数据写入MySQL数据库的代码
2016/05/31 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
jQuery 处理网页内容的实现代码
2010/02/15 Javascript
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
Js获取事件对象代码
2010/08/05 Javascript
js中巧用cssText属性批量操作样式
2011/03/13 Javascript
jquery 跨域访问问题解决方法(笔记)
2011/06/08 Javascript
动态加载js、css等文件跨iframe实现
2014/02/24 Javascript
js键盘事件的keyCode
2014/07/29 Javascript
js获取当前日期前七天的方法
2015/02/28 Javascript
Bootstrap中表单控件状态(验证状态)
2016/08/04 Javascript
JS遍历ul下的li点击弹出li的索引的实现方法
2016/09/19 Javascript
JS获取url参数,JS发送json格式的POST请求方法
2018/03/29 Javascript
JS判断字符串是否为整数的方法--简单的正则判断
2018/07/23 Javascript
详解在网页上通过JS实现文本的语音朗读
2019/03/28 Javascript
[54:18]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第一场 1月22日
2021/03/11 DOTA
从零学Python之hello world
2014/05/21 Python
Python采用raw_input读取输入值的方法
2014/08/18 Python
python常见数制转换实例分析
2015/05/09 Python
自动化Nginx服务器的反向代理的配置方法
2015/06/28 Python
实现python版本的按任意键继续/退出
2016/09/26 Python
Python实现的简单dns查询功能示例
2017/05/24 Python
Centos 升级到python3后pip 无法使用的解决方法
2018/06/12 Python
python tools实现视频的每一帧提取并保存
2020/03/20 Python
Python类的动态绑定实现原理
2020/03/21 Python
微软澳洲官方网站:Microsoft Australia
2017/01/10 全球购物
美丽的现代设计家具:2Modern
2018/07/26 全球购物
英国在线泳装店:Simply Swim
2019/05/05 全球购物
TUMI香港官网:国际领先的行李箱、背囊品牌
2021/03/01 全球购物
采购部经理岗位职责
2014/02/10 职场文书
先进单位事迹材料
2014/12/25 职场文书
物业保安辞职信
2015/05/12 职场文书
2016小学教师读书心得体会
2016/01/13 职场文书