动态给table添加动态航
- <html>
- <head>
- <title>usually function</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- </head>
- <script type="text/javascript" src="jquery-1.4.4.js"></script>
- <body>
- <table border="1px" id="targetTable">
- <tr border="1px">
- <td>序号</td>
- <td>姓名</td>
- <td>年龄</td>
- <td>生日</td>
- <td>备注</td>
- </tr>
- <tr id="model" style="display:none" border="1px">
- <td></td>
- <td><input type="text" name="username"></td>
- <td><input type="text" name="age"></td>
- <td><input type="text" name="birthday"></td>
- <td><input type="text" name="note"><span onclick="del(this)">删除</span></td>
- </tr>
- </table>
- <br>
- <br>
- 用户输入表单:
- 姓名<input type="text" name="u_username"><br>
- 年龄<input type="text" name="u_age"><br>
- 生日<input type="text" name="u_birthday"><br>
- 备注<input type="text" name="u_note"><br>
- <button onclick="add()" style="font-size:12px">添加</button>
- </body>
- <html>
- <script>
- function del(obj){
- //alert($(obj).closest("tr").attr("outerHTML"));
- //$(obj).closest("tr").attr("outerHTML","")
- $(obj).closest("tr").remove();
- resetSequenceNum();
- }
- function add(){
- //获取表单的值
- var u_username = $("input[name='u_username']").val();
- var u_age = $("input[name='u_age']").val();
- var u_birthday = $("input[name='u_birthday']").val();
- var u_note = $("input[name='u_note']").val();
- //alert(u_username);
- //判断表单的值是否为空
- if(u_username=="" || u_username==undefined){
- alert("用户姓名不能为空");
- $("input[name='u_username']").focus();
- return false;
- }
- //缓存要赋值的内容,避免多次查询,提高效率
- var trstr = $("#model").attr("outerHTML");
- //alert(trstr);
- //复制最后一行的代码添加到表的最后一行
- $("#targetTable tr").last().after(trstr);
- //$("#targetTable").find("tr").last().after(trstr);
- //让最后一行显示出来,而不是隐藏
- //$("#targetTable tr").last().css("display","block");会出现浏览器兼容的问题,在ff中显示不正常
- $("#targetTable tr").last().css("display","");
- //赋值
- var target = $("#targetTable tr").last().find("td");
- target.find("input[name='username']").val(u_username);
- target.find("input[name='age']").val(u_age);
- target.find("input[name='birthday']").val(u_birthday);
- target.find("input[name='note']").val(u_note);
- resetValue();
- resetSequenceNum();
- }
- //清空表单的值
- function resetValue(){
- $("input[name='u_username']").val("");
- $("input[name='u_age']").val("");
- $("input[name='u_birthday']").val("");
- $("input[name='u_note']").val("");
- }
- //重新设置序号
- function resetSequenceNum(){
- var num=0;
- $("#targetTable tr").each(function(index,dom){
- if(index!=0){
- $(dom).find("td").first().html(num);
- num++;
- }
- });
- }
- </script>
- <html>
- <head>
- <title>usually function</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- </head>
- <script type="text/javascript" src="jquery-1.4.4.js"></script>
- <body>
- <table border="1px" id="targetTable">
- <tr border="1px">
- <td>序号</td>
- <td>姓名</td>
- <td>年龄</td>
- <td>生日</td>
- <td>备注</td>
- </tr>
- <tr id="model" border="1px" style="display:none">
- <td></td>
- <td><input type="text" name="username"></td>
- <td><input type="text" name="age"></td>
- <td><input type="text" name="birthday"></td>
- <td><input type="text" name="note"><span onclick="del(this)">删除</span></td>
- </tr>
- </table>
- <button onclick="add()" style="font-size:12px">添加下一行</button><br>
- <button onclick="isnotEmpty()" style="font-size:12px">isEmpty</button>
- </body>
- <html>
- <script>
- function del(obj){
- $(obj).closest("tr").remove();
- resetSequenceNum();
- }
- function add(){
- if(isnotEmpty()){
- //缓存要赋值的内容,避免多次查询,提高效率
- var trstr = $("#model").attr("outerHTML");
- //复制最后一行的代码添加到表的最后一行
- $("#targetTable tr").last().after(trstr);
- //让最后一行显示出来,而不是隐藏
- //$("#targetTable tr").last().css("display","block");会出现浏览器兼容的问题,在ff中显示不正常
- $("#targetTable tr").last().css("display","");
- resetSequenceNum();
- }else{
- }
- }
- //检查添加的内容不能为空
- function isnotEmpty(){
- //缓存要赋值的内容,避免多次查询,提高效率
- var trstr = $("#model").attr("outerHTML");
- //删除第一个tr,也就是模板
- //$("#targetTable tr").first().remove();
- $("#model").remove();
- //alert(trstr);
- var flag = true;
- $("#targetTable input").each(function(index,ele){
- var obj = $(ele);
- var value = obj.val();
- if(""==value || undefined==value){
- alert(obj.attr("name")+ "为空");
- obj.focus();
- flag = false;
- return false;
- }
- });
- //将模板添加回来
- $("#targetTable tr").first().after(trstr);
- return flag;
- }
- //重新设置序号
- function resetSequenceNum(){
- var num=0;
- $("#targetTable tr").each(function(index,dom){
- if(index!=0){
- $(dom).find("td").first().html(num);
- num++;
- }
- });
- }
- </script>
动态给table添加动态航的更多相关文章
- js动态给table添加/删除tr的方法
js动态给table添加/删除tr的方法. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> ...
- JQuery动态给table添加、删除行 改进版
复制代码 代码如下: <html> <head> <title> </title> <script src="js/jquery-1.4 ...
- js实现动态操作table
本章案例为通过js,动态操作table,实现在单页面进行增删改查的操作. 简要案例如下: <%@ page language="java" contentType=&quo ...
- js基础例子动态创建table实例
<style> table{ width:500px; font-weight: bold; border: 1px solid #000; border-collapse:collaps ...
- JS动态创建Table,Tr,Td并赋值
JS动态创建Table,Tr,Td并赋值. 成果库修改: 要求主题列表随成果类型改变而改变 网上查询资料后开工,在成果类型下拉框添加change()事件触发Dwr,查询主题集合——动态创建/编辑Tab ...
- 使用element-ui 组件动态合并table的行/列(第二次修改)
这是第二次修改,在通过调用后台接口返回来的时候,发现了代码中的问题:现在将博客中错误的地方改过来,添加备注 文章需求:动态实现table表格中行/列的自动合并 使用框架及UI类库:Vue+Elemen ...
- 动态生成Table内文字换行。
后台动态生成table,并把td内的文字进行换行. 前台: <body style="width:100%;height:540px;margin-left:0px;margin-to ...
- javaScript动态给下拉列表框添加选项
方式一: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></titl ...
- Jquery 实现动态加入table tr 和删除tr 以及checkbox的全选 和 获取加入TR删除TR后的数据
关于jquery实现动态加入table tr的问题我也不多说了 上面代码非常多地方都有凝视的 关于返回的 编辑后的table 数据 我这里想说的是我直接把他保存成一个连接起来的字符串了 格式 str= ...
随机推荐
- node学习网站
https://nodejs.org/api/tty.html https://www.cnblogs.com/vajoy/p/4783390.html process下面的所有方法
- 如何在react&webpack中引入图片?
在react&webpack项目中需要引入图片,但是webpack使用的模块化的思想,如果不进行任何配置,而直接在jsx或者是css中使用相对路径来使用就会出现问题,在webpack中提供了u ...
- Git学习系列之Git和TortoiseGit的区别
不多说,直接上干货! Git和TortoiseGit的区别: TortoiseGit的安装和使用依赖Git. Git有且只有一个,就是linux最初创建的那个叫做Git的程序.现在的维护者的名字我懒得 ...
- ActiveMQ_Linux安装
首先ActiveMQ查看你需要的版本 官网:http://activemq.apache.org/ 我这里选择的是:apache-activemq-5.14.0-bin.tar.gz 然后在linux ...
- Boost application performance using asynchronous I/O-ref
http://www.ibm.com/developerworks/linux/library/l-async/?S_TACT=105AGX52&S_CMP=cn-a-l Introducti ...
- 实现 如 goole closure 类似功能模块加载函数
看过goole closure 的同学都知道 其中定义一个类名函数时候只要 inlude("") 想加载某个模块只要require("")就可以利用: ...
- VMware workstation 非正常关机导致开机失败,解决方法
问题:VMware workstation 非正常关机导致开机失败!如下图:
- 怎样以最快的速度导入mysql
前一段时间团队举办数据库大赛,和我一组的小伙伴给我发了个链接,我觉得很有意思: https://dbahire.com/testing-the-fastest-way-to-import-a-tabl ...
- SQL 工具系列一
1.误删除数据恢复篇 ApexSQL Recover 可以恢复Delete Truncate drop,恢复 二进制大型对象 测试版本 每10行才会恢复 评估版本下载地址:只能用14天 所以基 ...
- 让div铺满整个空间
需要用到几个css属性: .content{ width:100%;position: absolute;top: 50px;bottom: 0px;left: } 设置了bottom.top及abs ...