基于jQuery实现点击最后一行实现行自增效果的表格


Posted in Javascript onJanuary 12, 2016

现在任何事务都追求效率和人性化,当然网页效果也是如此,如果一个可以编辑数据的表格,编辑到最后一行的时候,点击可以自动添加一行,这样算是一个比较人性化的效果,可以免去一丝劳顿之苦,下面分享一段这样的代码。

代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="https://3water.com/" />
<title>三水点靠木</title>
<style type="text/css">
table 
{
width:800px;
margin:50px auto;
border-collapse:collapse;
border-spacing:0;
}
table tr, table th, table td 
{
border:1px solid #ddd;
font-size:12px;
}
table tr td:first-child 
{
width:30px;
text-align:center;
}
table td input 
{
width:100%;
height:100%;
padding:5px 0;
border:0 none;
}
table td input:focus 
{
box-shadow:1px 1px 3px #ddd inset;
outline:none;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(function(){
var oTable = $("#count"), iNum = 1, eEle = '';
oTable.on('click', function(e){
var target = e.target,
oTr = $(target).closest('tr');
if(oTr.index() == oTable.find('tr').last().index())
{
iNum++;
eEle = oTr.clone();
eEle.find('td').eq(0).text(iNum);
}
oTable.append(eEle);
});
});
</script>[/size]
[size=2]</head>
<body>
<table id="count">
<tr>
<th>序号</th>
<th>姓名</th>
<th>金额[USD]</th>
<th>时间</th>
<th>项目</th>
<th>单位</th>
<th>备注</th>
</tr>
<tr>
<td>1</td>
<td><input type="text" /></td>
<td><input type="text" /></td>
<td><input type="text" /></td>
<td><input type="text" /></td>
<td><input type="text" /></td>
<td><input type="text" /></td>
</tr>
</table>
</body>
</html>

以上代码实现了我们的要求,点击表格的最后一行,可以自动添加新行,下面介绍一下它的实现过程。

一.代码注释:

1.$(function(){}),当文档结构完全加载完毕再去执行函数中的代码。
2.var oTable = $("#count"),获取id属性值为count的对象,在这里就是表格对象。
3.iNum = 1,声明一个变量并赋初值为1,以后可以每增加一行就会+1作为行号。
4.eEle = '',声明一个变量用来存储行对象。
5.oTable.on('click', function(e){}),为表格对象注册click事件处理函数。
6.var target = e.target,获取被点击的源对象。
7.oTr = $(target).closest('tr'),获取最近的tr祖辈元素。
8.f(oTr.index()==oTable.find('tr').last().index()),判断点击的是否是最后一行。
9.iNum++,iNum的值加1。
10.eEle = oTr.clone(),克隆当前行对象。
11.eEle.find('td').eq(0).text(iNum),设置最后一行第一个单元格的值。
12.oTable.append(eEle),为表格的最后添加行。

关于jQuery实现点击最后一行实现行自增效果的表格的全部内容先给大家介绍这么多,以上内容给大有注释,有不明白得地方可以参考下,非常感谢大家一直以来对三水点靠木网站的支持。

Javascript 相关文章推荐
js replace替换所有匹配的字符串
Feb 13 Javascript
JavaScript立即执行函数的三种不同写法
Sep 05 Javascript
JS根据生日算年龄的方法
May 05 Javascript
js操作table元素实现表格行列新增、删除技巧总结
Nov 18 Javascript
jQuery实现的无限级下拉菜单功能示例
Sep 12 Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
Sep 12 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
Sep 24 Javascript
js阻止移动端页面滚动的两种方法
Jan 25 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
May 23 Javascript
Bootstrap Table使用整理(一)
Jun 09 Javascript
JS简单实现数组去重的方法分析
Oct 14 Javascript
Vue 实例事件简单示例
Sep 19 Javascript
7个jQuery最佳实践
Jan 12 #Javascript
实例详解jQuery Mockjax 插件模拟 Ajax 请求
Jan 12 #Javascript
JavaScript实现输入框(密码框)出现提示语
Jan 12 #Javascript
javascript自动恢复文本框点击清除后的默认文本
Jan 12 #Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
Jan 12 #Javascript
jquery模拟实现鼠标指针停止运动事件
Jan 12 #Javascript
js实现字符串和数组之间相互转换操作
Jan 12 #Javascript
You might like
PHP新手入门学习方法
2011/05/08 PHP
解析php中如何调用用户自定义函数
2013/08/06 PHP
laravel 操作数据库常用函数的返回值方法
2019/10/11 PHP
PHP字符串与数组处理函数用法小结
2020/01/07 PHP
js 点击按钮弹出另一页,选择值后,返回到当前页
2010/05/26 Javascript
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
IE6-IE9不支持table.innerHTML的解决方法分享
2012/09/14 Javascript
键盘上一张下一张兼容IE/google/firefox等浏览器
2014/01/28 Javascript
使用js显示当前时间示例
2014/03/02 Javascript
JS实现统计复选框选中个数并提示确定与取消的方法
2015/07/01 Javascript
JS代码随机生成姓名、手机号、身份证号、银行卡号
2016/04/27 Javascript
JS简单实现DIV相对于浏览器固定位置不变的方法
2016/06/17 Javascript
jQuery下拉菜单的实现代码
2016/11/03 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
vue学习笔记之vue1.0和vue2.0的区别介绍
2017/05/17 Javascript
详解Angular 4 表单快速入门
2017/06/05 Javascript
JS中promise化微信小程序api
2018/04/12 Javascript
解决angularjs前后端分离调用接口传递中文时中文乱码的问题
2018/08/13 Javascript
微信小程序显示倒计时功能示例【测试可用】
2018/12/03 Javascript
在Python中操作时间之strptime()方法的使用
2020/12/30 Python
Python的Django应用程序解决AJAX跨域访问问题的方法
2016/05/31 Python
Python 数据结构之堆栈实例代码
2017/01/22 Python
使用Python的turtle模块画国旗
2019/09/24 Python
Python列表原理与用法详解【创建、元素增加、删除、访问、计数、切片、遍历等】
2019/10/30 Python
pytorch 实现在预训练模型的 input上增减通道
2020/01/06 Python
html5实现图片转圈的动画效果——让页面动起来
2017/10/16 HTML / CSS
Sofmap官网:日本著名的数码电器专卖店
2017/05/19 全球购物
德国最大的网上足球商店:11teamsports
2019/09/11 全球购物
联强国际笔试题面试题
2013/07/10 面试题
linux面试题参考答案(5)
2016/11/05 面试题
小学家长会邀请函
2014/01/23 职场文书
供应链金融服务方案
2014/05/25 职场文书
关于爱国的标语
2014/06/24 职场文书
闪闪红星观后感
2015/06/08 职场文书
纪检监察立案决定书
2015/06/24 职场文书
MySQL系列之十五 MySQL常用配置和性能压力测试
2021/07/02 MySQL