jQuery动态添加和删除表格行
<!DOCTYPE html><html><head><meta charset="utf-8"><title>蚂蚁部落</title><script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script><script type="text/javascript"> $(function(){ $("#addOneRow").click(function(){ var tempTr=$("tr:first").clone(true); $("tr:last").after(tempTr); $("tr:last > td > #name").val(""); $("tr:last > td > #address").val(""); }); $(".delOneRow").click(function() { if ($("tr").length < 2) { alert("至少保留一行!"); } else{ if (confirm("确认删除?")) { $(this).parent().parent().remove(); } } }); }); </script></head><body><table border="1"> <tr> <td>姓名:</td> <td><input type="text" id="name" name="name" /></td> <td>地址:</td> <td><input type="text" id="address" name="address" /></td> <td><input type="button" class="delOneRow" value="删除" /></td> </tr></table><input type="button" id="addOneRow" value="添加一行" /></body></html> |
上面你的代码实现添加或者删除行的功能,下面介绍一下它的实现过程。
一.代码注释:
(1).$(function(){}),当文档结构完全加载完毕再去执行函数中的代码。
(2).$("#addOneRow").click(function(){}),为添加按钮注册click事件处理函数。
(3).var tempTr=$("tr:first").clone(true),克隆第一行的数据,采用深度克隆,具体可以参阅下面的相关阅读。
(4).$("tr:last").after(tempTr),在最后一行插入克隆的行。
(5).$("tr:last > td > #name").val(""),将最后一个tr行的用户名文本框的值设置为空,其实就是讲新添加的行的文本框的内容设置为空,因为上面采用的是深度拷贝,否则会将数据一起拷贝过来。
(6).$("tr:last > td > #address").val(""),和上面是一样的道理。
(7).$(".delOneRow").click(function() { }),为删除按钮注册click事件处理函数。
(8).if ($("tr").length < 2) { alert("至少保留一行!"); } ,如果行数只剩下一行,那么就会弹出提示。
(8).else{ if (confirm("确认删除?")) {$(this).parent().parent().remove();}},点击删除的时候弹出确认框,这样的话会将当前删除按钮的父元素的父元素删除,其实就是tr删除。
二.相关阅读:
(1).:first选择器参阅jQuery :first一章节。
(2).clone()方法参阅jQuery clone()一章节。
(3).after()方法参阅jQuery after()一章节。
(4).parent()方法参阅jQuery parent()一章节。
(4).remove()方法参阅jQuery remove()一章节。
jQuery动态添加和删除表格行的更多相关文章
- 利用jquery动态添加和删除表格的一行,并且保存单行数据
开发时遇到一个需求:要求要在页面的表格可以添加和删除一行,并能填写对应的数据后保存这一行数据. HTML代码 界面使用了freemarker框架,teams是后台传过来的list类型数据 <fo ...
- jquery 动态添加和删除 ul li列表
今天需要实现一个jquery动态添加和删除 ul li列表中的li行,自己简单的实现乐一个,分享一下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...
- jQuery----事件绑定之动态添加、删除table行
在jquery中,给元素绑定事件,本文一共介绍三种方法,运用案例,针对最常用的on()方法,进行事件绑定操作. 事件绑定方法: ①$(element).bind() 参数:{ “事件名称1”:func ...
- jQuery动态添加、删除按钮及input输入框
输入框的加减实现: <html> <head> <meta charset="utf-8"> <title>动态创建按钮</t ...
- JS添加和删除表格行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...
- jQuery 动态添加、删除css样式
1.addClass css中: <style type="text/css"> .chColor {background: #267cb7;color:w ...
- jQuery动态添加删除select项
// 添加 function col_add() { var selObj = $("#mySelect"); var value="value"; var t ...
- jQuery如何动态添加具有删除按钮的行
代码实例如下: <!DOCTYPE html><html><head><meta charset=" utf-8"><meta ...
- jquery 动态添加表格行
jquery 动态添加表格行 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <h ...
随机推荐
- Makoto and a Blackboard CodeForces - 1097D (积性函数dp)
大意: 初始一个数字$n$, 每次操作随机变为$n$的一个因子, 求$k$次操作后的期望值. 设$n$经过$k$次操作后期望为$f_k(n)$. 就有$f_0(n)=n$, $f_k(n)=\frac ...
- Two strings CodeForces - 762C (字符串,双指针)
大意: 给定字符串$a$,$b$, $b$可以任选一段连续的区间删除, 要求最后$b$是$a$的子序列, 求最少删除区间长度. 删除一段连续区间, 那么剩余的一定是一段前缀和后缀. 判断是否是子序列可 ...
- redis 学习(10)-- redis 慢查询
redis 慢查询 什么是慢查询 MySQL会记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为慢查询,都记在慢查询日志里. redis 的生命周期 客户端向Redis服务器发送命令 ...
- css背景图自适应全屏显示
前几天我在写一个前端页面的时候,需要用到全屏背景图,但是怎么写都不行(要么不全屏,要么不兼容Bootstrap的响应式布局).对,是我腊鸡 后来我在网上找的时候找到一个大神写的笔记,参(照)考(抄)之 ...
- spark精华面试题
1.driver的功能是什么? 1)一个Spark作业运行时包括一个Driver进程,也是作业的主进程,具有main函数,并且有SparkContext的实例,是程序的人口点: 2)功能:负责向集群申 ...
- 在不同电脑设备之间, 同步 VSCode 的插件和配置
前提有一个码云或者github的账户,以下是我用github的示例(只有第二步不一样): Step1. 安装 同步插件"Settings Sync" Step2. 进入github ...
- 06 Python之列表和元组
1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操作 添加: 1 ...
- ES6 新增的数组的方法
给定一个数组 let list = [ // wu: 武力 zhi:智力 { id: 1, name: '张飞', wu: 97, zhi: 10 }, { id: 2, name: '诸葛亮', w ...
- 第十九篇 jQuery初步学习
jQuery 初步学习 jQuery可以理解为是一种脚本,需要到网上下载,它是一个文件,后缀当然是js的文件,它里面封装了很多函数方法,我们直接调用即可,就比方说,我们用JS,写一个显示与隐藏,通 ...
- Spring IOC的简单实现
简单的说,Spring就是通过工厂+反射将我们的bean放到它的容器中的,当我们想用某个bean的时候,只需要调用getBean("beanID")方法即可. 原理简单说明: Sp ...