基于jQuery实现点击最后一行实现行自增效果的表格
作者:bea
现在任何事务都追求效率和人性化,当然网页效果也是如此,如果一个可以编辑数据的表格,编辑到最后一行的时候,点击可以自动添加一行,这样算是一个比较人性化的效果,可以免去一丝劳顿之苦,下面分享一段这样的代码。 代码如下: <!DOCTYPE html><html><head><meta charset=" utf-8"><meta name="author" content="http:///" /><title
现在任何事务都追求效率和人性化,当然网页效果也是如此,如果一个可以编辑数据的表格,编辑到最后一行的时候,点击可以自动添加一行,这样算是一个比较人性化的效果,可以免去一丝劳顿之苦,下面分享一段这样的代码。
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http:///" />
<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实现点击最后一行实现行自增效果的表格的全部内容先给大家介绍这么多,以上内容给大有注释,有不明白得地方可以参考下,非常感谢大家一直以来对网站的支持。
有用 | 无用
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http:///" />
<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类型检测之typeof 和 instanceof 的缺陷与优化
- jquery对复选框(checkbox)的操作汇总
- 分享javascript计算时间差的示例代码
- 学习JavaScript设计模式之代理模式
- 基于JavaScript实现TAB标签效果
- 基于JavaScript实现瀑布流布局
- 轻松实现JavaScript图片切换
- jQuery动画效果图片轮播特效
- jQuery动画效果实现图片无缝连续滚动
- jqueryMobile使用示例分享
- WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
- WordPress中利用AJAX技术进行评论提交的实现示例
- 基于JavaScript实现div层跟随滚动条滑动
- JavaScript继承模式粗探
- 轻松实现Bootstrap图片轮播
- 探析浏览器执行JavaScript脚本加载与代码执行顺序
- 学习JavaScript设计模式之策略模式
- 基于jQuery1.9版本如何判断浏览器版本类型
- jQuery版本升级踩坑大全