js+jquery实现增加或删除表格中的一行数据
来源:互联网 发布:淘宝退货怎么寄件 编辑:程序博客网 时间:2024/05/22 05:00
jquery和js代码如下(该方法有bug,至少要留一个模板,否则,之后不能再新增行):
function setIndex() { var i = 2; $(".rsnum").each(function(){ //增加一行后重新更新序号1,2,3...... $(this).attr('value',i++); })}$(document).ready(function() { $(".addmid").click(function(){ $tr = $(".midTR").eq(0).clone();//首先获取相同类的元素,并的到第一个节点元素。复制该节点元素 /* $tr.removeClass("midTR");//移除该元素的class $tr.addClass("midTR0"); *///添加新的class $(this).parent().parent().before($tr);//找到该节点的父节点,并在之前添加$tr元素 setIndex(); });});function delMid(nowTr){ $ss = $(nowTr).parent().parent().remove();//移除该节点元素 setIndex();}经过改良的js代码如下(该方法思路为:将最后一行修改样式为中间站的样式):
function setIndex() {var i = 2;$(".rsnum").each(function(){ //增加一行后重新更新序号1,2,3......$(this).attr('value',i++);$(this).attr('name','routeSites['+(i-3)+'].rsnum');//修改属性名,并赋予角标,从而通过Springmvc可以获取list值$(this).parent().parent().find('select').attr('name','routeSites['+(i-3)+'].site.snum');$(this).parent().parent().parent().find('input').eq(1).attr('name','routeSites['+(i-3)+'].distance');$(this).parent().parent().parent().find('input').eq(2).attr('name','routeSites['+(i-3)+'].rstime');})}$(document).ready(function() {setIndex();$(".addmid").click(function(){//该方法可以将终点站那一行数据复制,并修改为中间站的样式$tr = $(".endTR").clone();//复制该节点元素$tr.removeClass("endTR");//移除该节点的class$tr.find('td').eq(0).find('input').remove();$tr.find('td').eq(0).find('span').html('第<input type="text" class="rsnum" readonly="readonly" style="border: 0;width: 15px">站');$tr.find('td').eq(3).html('<input onclick="delMid(this)" type="button" value="删除当前站点" />');$(this).parent().parent().before($tr);setIndex();});});function delMid(nowTr){$ss = $(nowTr).parent().parent().remove();setIndex();}
html代码如下:
1 <form name="form2" action="addRoute" method="post"> 2 路线名称<input type="text" name="rname" class="input4"> 3 类型<select name="rtype"> 4 <option value="省内">省内</option> 5 <option value="省外">省外</option> 6 </select> 7 <table border="1" id="tables" class="tabs"> 8 <tr> 9 <td>起始站点<input type="text" name="stratSname" class="input4"></td>10 <td></td>11 <td></td>12 <td></td>13 </tr>14 <tr class="midTR">15 <td>第<input type="text" class="rsnum" name="rsnum" value="2" readonly="readonly" style="border: 0;width: 15px">站16 <input type="text" name="sname" class="input4"></td>17 <td>距上一站距离<input type="text" name="distance" class="input4"></td>18 <td>预计时间<input type="text" name="rstime" class="input4"></td>19 <td><input onclick="delMid(this)" type="button" value="删除当前站点" /></td>20 </tr>21 <tr class="endTR">22 <td>终点站<input type="text" name="sname" class="input4"></td>23 <td>距上一站距离<input type="text" name="distance" class="input4"></td>24 <td>预计时间<input type="text" name="rstime" class="input4"></td>25 <td><input class="addmid" type="button" value="增加一个站点" /></td>26 </tr>27 <tr>28 <td colspan="6"><input type="submit" value="确定" /><input29 type="button" onClick="history.back();" value="返回" /></td>30 </tr>31 </table>32 </form>
页面展示:
阅读全文
0 0
- js+jquery实现增加或删除表格中的一行数据
- jQuery实现表格全选、反选、删除一行或多行、增加一行
- jQuery 实现表格最后增加一行和删除最后一行
- JS 动态给表格增加/删除一行
- juicer实现表格显示,增加或删除一条数据
- jQuery动态增加表格一行和删除一行
- jQuery动态增加表格一行和删除一行
- js实现简单的动态添加或删除一行数据
- js实现添加删除表格的一行
- js操作表格操方法,增加,修改,删除,一行记录
- jquery 实现增加一行tr,删除一行tr
- 强大的JS,增加删除表格数据。
- 使用jquery操作table元素:增加或删除一行
- 表格动态增加一行和删除一行
- 使用js实现表格增加与删除
- easyui datagrid增加一行或删除一行
- js实现复制,删除一行div或一行table
- 点击按钮实现表格动态添加或删除一行
- C++之考虑写出一个不抛出异常的swap函数(25)---《Effective C++》
- 标记检测:原理和实现
- 使用GLFW与GLAD创建窗口并画出三角形
- Python的Pexpect库
- HDU 5046 Airport (DLX可重复覆盖+二分)
- js+jquery实现增加或删除表格中的一行数据
- Cloudera Manager 5升级(官方翻译整理,企业级实战验证)
- HDU 1003 注意初始化
- 着色器的一些归纳总结
- 51nod 1413 权势二进制
- Struts学习
- 【AngularJS】解决ng-if中的ng-model值无效的问题
- OSVR-Vive
- 获取XML文件内容