jQuery表格的维护和删除操作


Posted in Javascript onFebruary 03, 2017

最近学习jQuery,可以利用js函数来实现对表格的维护和删除,相对于JavaScript简单方便

首先看看页面的实现效果

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <script language="JavaScript" src="../js/jquery-1.4.2.js"></script>
  <title>添加用户</title>
 </head>
 <script src="user.js"></script>
 <body>
  <center>
   <br><br>
   添加用户:<br><br>
   姓名: <input type="text" name="name" id="name" />  
   email: <input type="text" name="email" id="email" />  
   电话: <input type="text" name="tel" id="tel" /><br><br>
   <button id="addUser">提交</button>
   <button id="deleteUser">删除选中</button>
   <br><br>
   <hr>
   <br><br>
   <table id="usertable" border="1" cellpadding="5" cellspacing=0>
    <tbody>
     <tr>
      <th><input type="checkbox" id="allCheckbox"/></th>
      <th>姓名</th>
      <th>email</th>
      <th>电话</th>
      <th>修改</th>
      <th>删除</th>
     </tr>
    </tbody>
   </table>
   <br>
   <br>
   <br>
   <hr>
   修改用户:<br><br>
   姓名: <input type="text" name="name" id="name_update" />  
   email: <input type="text" name="email" id="email_update" />  
   电话: <input type="text" name="tel" id="tel_update" /><br><br>
   <input type="hidden" id="id_update"/>
   <button id="updateUser">提交</button>
  </center>
 </body>
</html>

页面展示

jQuery表格的维护和删除操作

js后台代码

$().ready(function(){
 var index = 1;
 /**
  * 完成添加功能
  */
 $("#addUser").click(function(){
  /**
   * 1、获取姓名,电话,email的值
   * 2、创建
   *  <tr>
   *   <td><input type="checkbox"></td>
   *   <td>${姓名}</td>
   *   <td>${email}</td>
   *   <td>${phone}</td>
   *   <td><a>修改</a></td>
   *   <td><a>删除</a></td>
   *  </tr>
   * 3、把创建完成的tr追加到tbody上
   */
  var name = $("#name").val();
  var email = $("#email").val();
  var tel = $("#tel").val();
  var $checkbox = $("<input/>").attr("type","checkbox");
  var $checkboxTD = $("<td/>").append($checkbox);
  $checkboxTD.attr("id",index);
  index++;
  var $nameTD = $("<td/>").text(name);
  var $emailTD = $("<td/>").text(email);
  var $phoneTD = $("<td/>").text(tel);
  var $updateA = $("<a/>").text("修改");
  /**
   * 完成修改的功能
   */
  $updateA.css("cursor","pointer");
  /**
   * 给修改的超级链接添加click事件
   */
  $updateA.click(function(){
   var name = $(this).parent().siblings("td:eq(1)").text();
   var email = $(this).parent().siblings("td:eq(2)").text();
   var tel = $(this).parent().siblings("td:eq(3)").text();
   var id = $(this).parent().siblings("td:eq(0)").attr("id");
   $("#name_update").val(name);
   $("#email_update").val(email);
   $("#tel_update").val(tel);
   $("#id_update").val(id);
  });
  var $updateTD = $("<td/>").append($updateA);
  var $delA = $("<a/>").text("删除");
  $delA.css("cursor","pointer");
  $delA.click(function(){//完成删除本行的功能
   if(window.confirm("您确认要删除吗?")){
    $(this).parent().parent().remove(); 
   }
  });
  var $delTD = $("<td/>").append($delA);
  var $tr = $("<tr/>").append($checkboxTD).
   append($nameTD).append($emailTD).
   append($phoneTD)
   .append($delTD).append($updateTD);
  $("#usertable tbody").append($tr);
 });
 /**
  * 完成删除几行的功能
  */
 $("#deleteUser").click(function(){
  if(window.confirm("您确认要删除吗?")){
   /**
    * :checkbox 所有的checkbox
    * :not(#allCheckbox) 不包含id为allCheckbox
    *  被选中的
    */
   $(":checkbox:not(#allCheckbox):checked").parent().parent().remove();  
  }
 });
 /**
  * 全选功能
  */
 $("#allCheckbox").click(function(){
  if($(this).attr("checked")){
   $(":checkbox:not(#allCheckbox)").attr("checked",true);
  }else{
   $(":checkbox:not(#allCheckbox)").attr("checked",false);
  }
 });
 /**
  * 完成修改操作
  */
 $("#updateUser").click(function(){
  /**
   * 获取到修改的id的值,根据值去匹配table中的行
   */
  var idValue = $("#id_update").val();
  var name_update = $("#name_update").val();
  var email_update = $("#email_update").val();
  var tel_update = $("#tel_update").val();
  /**
   * 根据修改的id的值就定位某一行(td)
   */
  $("td[id="+idValue+"]").siblings("td:eq(0)").text(name_update);
  $("td[id="+idValue+"]").siblings("td:eq(1)").text(email_update);
  $("td[id="+idValue+"]").siblings("td:eq(2)").text(tel_update);
 });
});

以上所述是小编给大家介绍的jQuery表格的维护和删除操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript检测页面是否缩放的小例子
May 16 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
Oct 21 Javascript
js数组常见操作及数组与字符串相互转化实例详解
Nov 10 Javascript
jquery实现点击页面回到顶部
Nov 23 Javascript
概述如何实现一个简单的浏览器端js模块加载器
Dec 07 Javascript
JS常用加密编码与算法实例总结
Dec 22 Javascript
javascript DOM的详解及实例代码
Mar 06 Javascript
微信小程序开发之数据存储 参数传递 数据缓存
Apr 13 Javascript
vue实现长图垂直居上 vue实现短图垂直居中
Oct 18 Javascript
angular 用Observable实现异步调用的方法
Dec 27 Javascript
html5调用摄像头截图功能
Jan 18 Javascript
AudioContext 实现音频可视化(web技术分享)
Feb 24 Javascript
折叠菜单及选择器的运用
Feb 03 #Javascript
jQuery读取XML文件的方法示例
Feb 03 #Javascript
JavaScript函数基础详解
Feb 03 #Javascript
JavaScript提高加载和执行效率的方法
Feb 03 #Javascript
使用Bootstrap美化按钮实例代码(demo)
Feb 03 #Javascript
Node.js的特点详解
Feb 03 #Javascript
Bootstarp 基础教程之表单部分实例代码
Feb 03 #Javascript
You might like
Oracle Faq(Oracle的版本)
2006/10/09 PHP
一个简单计数器的源代码
2006/10/09 PHP
PHP4与PHP5的时间格式问题
2008/02/17 PHP
PHP中防止SQL注入攻击和XSS攻击的两个简单方法
2010/04/15 PHP
细谈php中SQL注入攻击与XSS攻击
2012/06/10 PHP
用javascript获得地址栏参数的两种方法
2006/11/08 Javascript
extjs 学习笔记(三) 最基本的grid
2009/10/15 Javascript
基于Jquery的文字自动截取(提供源代码)
2011/08/09 Javascript
JavaScript针对网页节点的增删改查用法实例
2015/02/02 Javascript
Javascript中判断对象是否为空
2015/06/10 Javascript
jQuery实现鼠标滑过链接控制图片的滑动展开与隐藏效果
2015/10/28 Javascript
浅谈JavaScript 覆盖原型以及更改原型
2016/08/31 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
AngularJS自定义插件实现网站用户引导功能示例
2016/11/07 Javascript
JavaScript实现前端分页控件
2017/04/19 Javascript
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
2017/05/20 jQuery
JS获取子、父、兄节点方法小结
2017/08/14 Javascript
原生js实现针对Dom节点的CRUD操作示例
2019/08/26 Javascript
Element图表初始大小及窗口自适应实现
2020/07/10 Javascript
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
python递归查询菜单并转换成json实例
2017/03/27 Python
Django原生sql也能使用Paginator分页的示例代码
2017/11/15 Python
Python安装lz4-0.10.1遇到的坑
2018/05/20 Python
详解Python Matplotlib解决绘图X轴值不按数组排序问题
2019/08/05 Python
在python里创建一个任务(Task)实例
2020/04/25 Python
python实现凯撒密码、凯撒加解密算法
2020/06/11 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
AE美国鹰日本官方网站: American Eagle Outfitters
2016/12/10 全球购物
英国领先的NHS批准的在线药店:Pharmacy2U
2017/01/06 全球购物
荷兰网上买鞋:MooieSchoenen.nl
2017/09/12 全球购物
中科创达面试题
2016/12/28 面试题
远程调用的原理
2014/07/05 面试题
会计专业推荐信
2013/10/29 职场文书
党课知识竞赛主持词
2014/04/01 职场文书
机电一体化专业求职信
2014/07/22 职场文书
社区党风廉政建设调研报告
2015/01/01 职场文书