jQuery表格行上移下移和置顶的实现方法


Posted in Javascript onOctober 08, 2015

我们在操作列表数据的时候,需要将数据行排列顺序进行调整,如上移和下移行,将行数据置顶等,这些操作都可以在前端通过点击按钮来完成,并且伴随着简单的动态效果,轻松实现表格数据排序。

运行效果图:

jQuery表格行上移下移和置顶的实现方法

HTML
页面上是一个简单的数据表格,我们在数据行中分别放置“上移”,“下移”和“置顶”三个链接,并且分别定义三个class属性,我们来通过jQuery实现这些操作。

<table class="table"> 
 <tr> 
  <td>HTML5获取地理位置定位信息</td> 
  <td>2015-04-25</td> 
  <td><a href="#" class="up">上移</a> <a href="#" class="down">下移</a> <a href="#" class="top">置顶</a></td> 
 </tr> 
 <tr> 
  <td>CSS+Cookie实现的固定页脚广告条置顶</a></td> 
 </tr> 
 ... 
</table>

jQuery
我们需要预先把jQuery库文件载入,然后分别绑定上移、下移和置顶三个操作的click事件。以“上移”为例,当点击时,获取当前点击的行内容,及tr,然后判断该行是不是第一行,如果不是第一行,那么就将该行插入到上一行的前面,实现了互换的目的。当然我们可以给行加fadeOut()和fadeIn()过渡效果,这样看起来会更生动些,否则上移的过程会一闪而过。“下移”和“置顶”操作流程都差不多,请看代码:

$(function(){ 
 //上移 
 var $up = $(".up") 
 $up.click(function() { 
  var $tr = $(this).parents("tr"); 
  if ($tr.index() != 0) { 
   $tr.fadeOut().fadeIn(); 
   $tr.prev().before($tr); 
    
  } 
 }); 
 //下移 
 var $down = $(".down"); 
 var len = $down.length; 
 $down.click(function() { 
  var $tr = $(this).parents("tr"); 
  if ($tr.index() != len - 1) { 
   $tr.fadeOut().fadeIn(); 
   $tr.next().after($tr); 
  } 
 }); 
 //置顶 
 var $top = $(".top"); 
 $top.click(function(){ 
  var $tr = $(this).parents("tr"); 
  $tr.fadeOut().fadeIn(); 
  $(".table").prepend($tr); 
  $tr.css("color","#f60"); 
 }); 
});

当然,实际应用中应该结合您的项目,在操作“上移”,“下移”和“置顶”完成时,应该和后台程序进行Ajax异步交互,保证排序数据真正被后台记录,然后刷新后会展示新的排序结果,本文不再对该异步操作做详细解说。

Javascript 相关文章推荐
javascript新手语法小结
Jun 15 Javascript
让div层随鼠标移动的实现代码 ie ff
Dec 18 Javascript
DWR中各种java方法的调用
May 04 Javascript
关于Jquery中的事件绑定总结
Oct 26 Javascript
浅谈EasyUi ComBotree树修改 父节点选择的问题
Nov 07 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
Nov 25 Javascript
教你一步步用jQyery实现轮播器
Dec 18 Javascript
基于jQuery实现选项卡效果
Jan 04 Javascript
解决JQuery全选/反选第二次失效的问题
Oct 11 jQuery
Swiper自定义分页器使用详解
Dec 28 Javascript
JS如何判断对象是否包含某个属性
Aug 29 Javascript
Javascript节流函数throttle和防抖函数debounce
Dec 03 Javascript
Jquery中使用show()与hide()方法动画显示和隐藏图片
Oct 08 #Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
Oct 08 #Javascript
js小数运算出现多位小数如何解决
Oct 08 #Javascript
jQuery实现仿微软首页感应鼠标变化滑动窗口效果
Oct 08 #Javascript
js实现超酷的照片墙展示效果图附源码下载
Oct 08 #Javascript
JS实现常见的TAB、弹出层效果(TAB标签,斑马线,遮罩层等)
Oct 08 #Javascript
Javascript控制div属性动态变化实例分析
Oct 08 #Javascript
You might like
php面向对象全攻略 (九)访问类型
2009/09/30 PHP
PHP过滤★等特殊符号的正则
2014/01/27 PHP
yum命令安装php7和相关扩展
2016/07/04 PHP
PHP+JavaScript实现无刷新上传图片
2017/02/21 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
2019/10/21 PHP
Javascript isArray 数组类型检测函数
2009/10/08 Javascript
Extjs中使用extend(js继承) 的代码
2012/03/15 Javascript
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
Javascript实现带关闭按钮的网页漂浮广告代码
2014/01/12 Javascript
jquery中对于批量deferred的处理方法
2014/01/22 Javascript
JavaSript中变量的作用域闭包的深入理解
2014/05/12 Javascript
jQuery的文档处理程序详解
2016/05/10 Javascript
Vue.js双向绑定实现原理详解
2016/12/22 Javascript
CodeMirror js代码加亮使用总结
2017/03/25 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
微信小程序--组件(swiper)详细介绍
2017/06/13 Javascript
基于iScroll实现下拉刷新和上滑加载效果
2017/07/18 Javascript
Koa日志中间件封装开发详解
2019/03/09 Javascript
JavaScript强制类型转换和隐式类型转换操作示例
2019/05/01 Javascript
webpack的pitching loader详解
2019/09/23 Javascript
基于wxpython实现的windows GUI程序实例
2015/05/30 Python
Python减少循环层次和缩进的技巧分析
2016/03/15 Python
Python正则简单实例分析
2017/03/21 Python
基于python爬虫数据处理(详解)
2017/06/10 Python
Python交互式图形编程的实现
2019/07/25 Python
python的数学算法函数及公式用法
2020/11/18 Python
纯CSS3实现手风琴风格菜单具体步骤
2013/05/06 HTML / CSS
Free People中国官网:波西米亚风格女装服饰
2016/08/30 全球购物
Ever New加拿大官网:彰显女性美
2018/10/05 全球购物
科颜氏英国官网:Kiehl’s英国
2019/11/20 全球购物
房地产开发计划书
2014/01/10 职场文书
小学德育工作经验交流材料
2014/05/22 职场文书
司机个人年终总结
2015/03/03 职场文书
幼儿园教师自荐书
2015/03/06 职场文书
大学开学感言
2015/08/01 职场文书
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
2022/04/20 Python