JS/jQuery实现超简单的Table表格添加,删除行功能示例


Posted in jQuery onJuly 31, 2019

本文实例讲述了JS/jQuery实现超简单的Table表格添加,删除行功能。分享给大家供大家参考,具体如下:

最近需要表格添加删除行,添加行简单,删除行就有点儿懵逼了,于是网上找实例,功夫不负有心人,终于让我找到了,下面的是代码,大家觉得可以,记得点赞哦!!!谢谢!

需要的拿去,转载请在明显的位置标注出出处!!!

<html>
<head>
    <title>table添加/删除行</title>
</head>
<body>
<table id="testTbl" border=1>
    <tr>
        <td>性别</td>
        <td>姓名</td>
        <td>年龄</td>
    </tr>
    <tr>
        <td>
            <select name="a">
              <option value="男">男</option>
              <option value="女">女</option>
            </select>
        </td>
        <td>
            <input type="text" name="b">
        </td>
        <td>
            <input type="text" name="c">
        </td>
    </tr>
</table>
<input type="button" name="Submit2" value="添加" onclick="addRow()">
<script>
function addRow(){
    //添加行
    var newTr = testTbl.insertRow();
    //添加列
    var newTd0 = newTr.insertCell();
    var newTd1 = newTr.insertCell();
    var newTd2 = newTr.insertCell();
    var newTd3 = newTr.insertCell();
    //设置列内容和属性
    newTd0.innerText = document.all("a").options[document.all("a").selectedIndex].text;
    newTd1.innerText = document.all("b").value;
    newTd2.innerText = document.all("c").value;
    newTd3.innerHTML= '<input type="button" name="del" value="删除" οnclick="del(this)">';
}
function del(o){
    //获取表格
    var t=document.getElementById('testTbl');
    //删除当前行
    t.deleteRow(o.parentNode.parentNode.rowIndex)
}
</script>
</body>
</html>
//动态添加行
function addRow(){
  var table = document.getElementById("tableID");
  var newRow = table.insertRow(); //创建新行
  var newCell1 = newRow.insertCell(); //创建新单元格
  newCell.innerHTML = ""; //单元格内的内容
  newCell.setAttribute("align","center"); //设置位置
}
//动态删除行
function deleteRow(){
  var rowIndex = event.srcElement.parentElement.parentElement.rowIndex;
  var styles = document.getElementById("tableID");
  styles.deleteRow(rowIndex);
}

用克隆的方式

<html>
<head>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
var index = 0;
$(document).ready(function(){
 $("button").click(function(){
 index++;
  $("body").append($("p").clone().attr({'id':'name'+index,'name':'pwd'+index}));
 });
});
</script>
</head>
<body>
<p>This is a paragraph.</p>
<button>复制每个 p 元素,然后追加到 body 元素</button>
</body>
</html>

下面是直接添加和删除当前table表格,很好用

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <base href="<%=basePath%>" rel="external nofollow" >
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
 </head>
 <body>
  <a href = "javascript:void(0);" οnclick="a();">添加</a>
  <a href = "javascript:void(0);" οnclick="b();">显示</a>
  <table id = "tab"></table>
 </body>
<script type="text/javascript">
    var index = 0;
    var a = function(){
        index++;
        var tab = "<table id = 'tab_"+index+"' border = '1' >";
        tab += "<tr><td colspan = '6' align = 'center'>尺寸规格</td></tr>";
        tab += "<tr><td>长度</td><td><input οnblur='b("+index+");' id = 'cd_"+index+"' /></td><td align = 'right'>宽度</td><td><input οnblur='b("+index+");' id = 'kd_"+index+"' /></td><td>数量(个)</td><td><input οnblur='c("+index+");' id = 'sl_"+index+"' /></td></tr>";
        tab += "<tr><td>摆放区域</td><td><input id = 'bfqy_"+index+"' /></td><td>单个面积(平方米)</td><td><input readonly = 'readonly' id = 'dgmj_"+index+"' /></td><td>总面积</td><td><input readonly = 'readonly' id = 'zmj_"+index+"' /></td></tr>";
        tab += "<tr><td>内容描述</td><td colspan = '4'><textarea rows='3' cols='70' id = 'content_"+index+"' ></textarea></td><td><input type = 'button' value = '删除' onclick = 'del("+index+");' id = 'del_"+index+"' /></td></tr>";
        tab += "</table>";
        $('#tab').append(tab);
    }
    function del(ind){
        $('#tab_'+ind).remove();
    }
    function b(ind){
        var cdd = $('#cd_'+ind).val();
        var kdd = $('#kd_'+ind).val();
        if(cdd==''){cdd = 1;}
        if(kdd==''){kdd = 1;}
        if(cdd==''&&kdd==''){
            $('#dgmj_'+ind).val('');
        }else{
            $('#dgmj_'+ind).val(cdd * kdd);
        }
    }
    function c(ind){
        var cdd = $('#cd_'+ind).val();
        var kdd = $('#kd_'+ind).val();
        var sll = $('#sl_'+ind).val();
        if(cdd==''){cdd = 1;}
        if(kdd==''){kdd = 1;}
        if(sll==''){sll = 1;}
        if(cdd==''&&kdd==''&&sll==''){
            $('#zmj_'+ind).val('');
        }else if(cdd!=''&&kdd!=''&&sll!=''){
            $('#zmj_'+ind).val(cdd * kdd * sll);
        }else{
            $('#zmj_'+ind).val('');
        }
    }
</script>
</html>

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

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

jQuery 相关文章推荐
jQuery.ajax向后台传递数组问题的解决方法
May 12 jQuery
jQuery插件FusionCharts绘制的2D双柱状图效果示例【附demo源码】
May 13 jQuery
jQuery鼠标移动图片上实现放大效果
Jun 25 jQuery
360提示[高危]使用存在漏洞的JQuery版本的解决方法
Oct 27 jQuery
jQuery Datatables表头不对齐的解决办法
Nov 27 jQuery
判断jQuery是否加载完成,没完成继续判断的解决方法
Dec 06 jQuery
jQuery简单实现向列表动态添加新元素的方法示例
Dec 25 jQuery
vue+jquery+lodash实现滑动时顶部悬浮固定效果
Apr 28 jQuery
Vue引入jquery实现平滑滚动到指定位置
May 09 jQuery
解决jquery有正确返回值但不执行success函数的问题
Aug 20 jQuery
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
Feb 15 jQuery
jQuery实现的上拉刷新功能组件示例
May 01 jQuery
jquery.pager.js分页实现详解
Jul 29 #jQuery
jquery.pager.js实现分页效果
Jul 29 #jQuery
jQuery-Citys省市区三级菜单联动插件使用详解
Jul 26 #jQuery
jquery-ui 进度条功能示例【测试可用】
Jul 25 #jQuery
jquery ui 实现 tab标签功能示例【测试可用】
Jul 25 #jQuery
jQuery Ajax async=&gt;false异步改为同步时,解决导致浏览器假死的问题
Jul 22 #jQuery
jquery插件开发模式实例详解
Jul 20 #jQuery
You might like
Yii实现自动加载类地图的方法
2015/04/01 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
firefox中JS读取XML文件
2006/12/21 Javascript
详解new function(){}和function(){}() 区别分析
2008/03/22 Javascript
JQuery 网站换肤功能实现代码
2009/11/02 Javascript
dess中一个简单的多路委托的实现
2010/07/20 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
js判断iframe内的网页是否滚动到底部触发事件
2014/03/18 Javascript
Javascript验证用户输入URL地址是否为空及格式是否正确
2014/10/09 Javascript
JavaScript中的函数声明和函数表达式区别浅析
2015/03/27 Javascript
JS实现网页上随滚动条滚动的层效果代码
2015/11/04 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
JS中利用FileReader实现上传图片前本地预览功能
2018/03/02 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
2019/01/24 Javascript
Vue动态修改网页标题的方法及遇到问题
2019/06/09 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
[02:49]DOTA2完美大师赛首日观众采访
2017/11/23 DOTA
python selenium 获取标签的属性值、内容、状态方法
2018/06/22 Python
Python实现绘制双柱状图并显示数值功能示例
2018/06/23 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
2020/06/24 Python
浅析Python中字符串的intern机制
2020/10/03 Python
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
教师的实习鉴定
2013/12/15 职场文书
我的中国梦演讲稿400字
2014/08/19 职场文书
2015年春训学习心得体会范文
2015/03/09 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
2019大学毕业晚会主持词
2019/06/21 职场文书
vue中this.$http.post()跨域和请求参数丢失的解决
2022/04/08 Vue.js
javascript中Set、Map、WeakSet、WeakMap区别
2022/12/24 Javascript