jQuery实现表格行上下移动和置顶效果


Posted in Javascript onJune 05, 2015

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

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异步交互,保证排序数据真正被后台记录,然后刷新后会展示新的排序结果,本文不再对该异步操作做详细解说,就此结题。

以上所述就是本文的全部内容了,希望对大家学习jQuery能够有所帮助。

Javascript 相关文章推荐
静态页面的值传递(三部曲)
Sep 25 Javascript
Prototype Array对象 学习
Jul 19 Javascript
js判读浏览器是否支持html5的canvas的代码
Nov 18 Javascript
基于JS实现PHP的sprintf函数实例
Nov 14 Javascript
js实现楼层效果的简单实例
Jul 15 Javascript
通俗解释JavaScript正则表达式快速记忆
Aug 23 Javascript
JS实现的base64加密解密操作示例
Apr 18 Javascript
vue组件间的参数传递实例详解
Apr 26 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
Aug 07 Javascript
three.js着色器材质的内置变量示例详解
Aug 16 Javascript
基于Vue.js+Nuxt开发自定义弹出层组件
Oct 09 Javascript
编写v-for循环的技巧汇总
Dec 01 Javascript
jQuery实现弹出窗口中切换登录与注册表单
Jun 05 #Javascript
jQuery插件Slider Revolution实现响应动画滑动图片切换效果
Jun 05 #Javascript
javascript实现删除前弹出确认框
Jun 04 #Javascript
jquery插件validation实现验证身份证号等
Jun 04 #Javascript
JavaScript通过Date-Mask将日期转换成字符串的方法
Jun 04 #Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
Jun 04 #Javascript
JavaScript中Number.MAX_VALUE属性的使用方法
Jun 04 #Javascript
You might like
PHP实现的防止跨站和xss攻击代码【来自阿里云】
2018/01/29 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
2020/10/28 PHP
JavaScript中的对象化编程
2008/01/16 Javascript
响应鼠标变换表格背景或者颜色的代码
2009/03/30 Javascript
javascript 鼠标滚轮事件
2009/04/09 Javascript
jQuery文本框(input textare)事件绑定方法教程
2013/04/24 Javascript
jquery获取当前元素索引值用法实例
2015/06/10 Javascript
jQuery中prepend()方法使用详解
2015/08/11 Javascript
JavaScript脚本判断蜘蛛来源的方法
2015/09/22 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
2016/01/07 Javascript
jQuery实现简洁的轮播图效果实例
2016/09/07 Javascript
微信小程序  简单实例(阅读器)的实例开发
2016/09/29 Javascript
使用proxy实现一个更优雅的vue【推荐】
2018/06/19 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
javascript实现点亮灯泡特效示例
2019/10/15 Javascript
JavaScript array常用方法代码实例详解
2020/09/02 Javascript
python冒泡排序简单实现方法
2015/07/09 Python
python开发之list操作实例分析
2016/02/22 Python
关于Python面向对象编程的知识点总结
2017/02/14 Python
Python无损音乐搜索引擎实现代码
2018/02/02 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
Python实现FTP弱口令扫描器的方法示例
2019/01/31 Python
python中通过selenium简单操作及元素定位知识点总结
2019/09/10 Python
python中pop()函数的语法与实例
2020/12/01 Python
Java程序开发中如何应用线程
2016/03/03 面试题
如何填写个人简历自我评价
2013/12/10 职场文书
省优秀教师事迹材料
2014/01/30 职场文书
大学生个人求职口试自我评价
2014/02/16 职场文书
消防安全标语
2014/06/07 职场文书
化工专业自荐书
2014/06/16 职场文书
幼儿园中班区域活动总结
2014/07/09 职场文书
领导班子“四风问题”“整改方案
2014/10/02 职场文书
财政局个人总结
2015/03/04 职场文书
创业分两种人:那么哪些适合创业?,哪些适合不适合创业呢?
2019/08/23 职场文书
golang判断key是否在map中的代码
2021/04/24 Golang
简单总结SpringMVC拦截器的使用方法
2021/06/28 Java/Android