jquery对table做排序操作的实例演示


Posted in jQuery onAugust 10, 2017

最近要对报表数组进行排序,在前端处理如下:

首先在前台页面加载时对每行tr添加自定义的属性data-sort-field-ftime,属性值为要排序的字段的值(我的是数字比较方便):

$.each(jsonarray, function(i, obj) {
     troptions += "<tr data-sort-field-ftime=\""+obj.paiming+"\">";     
     troptions += "<td>"+(Number(obj.cdsPrem)/unitnow).toFixed(dotnow)+"</td>";
     troptions += "<td>"+(Number(obj.cdjPrem)/unitnow).toFixed(dotnow)+"</td>";
     troptions += "<td>"+(Number(obj.sumPrem)/unitnow).toFixed(dotnow)+"</td>";
     troptions += "<td>"+obj.paiming+"</td>";
     troptions += "</tr>";
   });

在要排序的表头添加onchange事件,以下为onchange事件:

//排序处理
 function changepm(){
  var sortType=$("#pm").val();
  var $trList = $("#ta tbody > tr");//获取现有tr对象
  //冒泡排序  
  for (var i = 0; i < $trList.length - 1; i++) {
   for (var j = 0; j < $trList.length - 1 - i; j++) {
    var value1 = parseInt($trList[j].attributes["data-sort-field-ftime"].nodeValue); 
    var value2 = parseInt($trList[j + 1].attributes["data-sort-field-ftime"].nodeValue);
    if (sortType === "asc" ? value1 > value2 : value1 < value2) {
     var $temp = $trList[j];
     $trList[j] = null;
     $trList[j] = $trList[j + 1];
     $trList[j + 1] = null;
     $trList[j + 1] = $temp;
    }
   }
  }      
  //返回排序后的tr集合
  //将原来的tr清空,再将排序后的tr插入到table的dom中
  console.log($trList);
  $trList.appendTo($("#ta > tbody").empty());
 }

以上就是jquery对table做排序操作的详细内容啦,希望对大家有所帮助,也希望大家继续支持三水点靠木~

jQuery 相关文章推荐
jQuery.form.js的使用详解
Jun 14 jQuery
jquery基于layui实现二级联动下拉选择(省份城市选择)
Jun 20 jQuery
jQuery实现手势解锁密码特效
Aug 14 jQuery
jQuery中each循环的跳出和结束实例
Aug 16 jQuery
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
Sep 20 jQuery
解决html-jquery/js引用外部图片时遇到看不了或出现403的问题
Sep 22 jQuery
jQuery EasyUI开发技巧总结
Sep 26 jQuery
jQuery实现购物车的总价计算和总价传值功能
Nov 28 jQuery
jQuery内容选择器与表单选择器实例分析
Jun 28 jQuery
jQuery实现图片随机切换、抽奖功能(实例代码)
Oct 23 jQuery
jQuery实现滑动星星评分效果(每日分享)
Nov 13 jQuery
基于jQuery实现挂号平台首页源码
Jan 06 jQuery
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
Aug 09 #jQuery
快速掌握jquery分页插件jqPaginator的使用方法
Aug 09 #jQuery
jQuery Easyui Treegrid实现显示checkbox功能
Aug 08 #jQuery
jQuery EasyUI的TreeGrid查询功能实现方法
Aug 08 #jQuery
基于jQuery对象和DOM对象和字符串之间的转化实例
Aug 08 #jQuery
jquery+css实现简单的图片轮播效果
Aug 07 #jQuery
使用jQuery实现鼠标点击左右按钮滑动切换
Aug 04 #jQuery
You might like
IIS6的PHP最佳配置方法
2007/03/19 PHP
php中获取指定IP的物理地址的代码(正则表达式)
2011/06/23 PHP
php设计模式 Singleton(单例模式)
2011/06/26 PHP
成为好程序员必须避免的5个坏习惯
2014/07/04 PHP
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
2014/07/10 PHP
PHPer 需要了解的 5 个 Composer 小技巧
2014/08/18 PHP
Yii2创建表单(ActiveForm)方法详解
2016/07/23 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
extJs 常用到的增,删,改,查操作代码
2009/12/28 Javascript
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
jQuery淡入淡出元素让其效果更为生动
2014/09/01 Javascript
jQuery中:hidden选择器用法实例
2014/12/30 Javascript
浅谈javascript 函数属性和方法
2015/01/21 Javascript
详谈javascript中的cookie
2015/06/03 Javascript
AngularJS使用angular-formly进行表单验证
2015/12/27 Javascript
使用postMesssage()实现跨域iframe页面间的信息传递方法
2016/03/29 Javascript
用js实现简单算法的实例代码
2016/09/24 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
微信小程序自定义tabBar的踩坑实践记录
2020/11/06 Javascript
[01:47]2018年度DOTA2最佳教练-完美盛典
2018/12/16 DOTA
[00:59]DOTA2背景故事第二期之四大基本法则
2020/07/07 DOTA
[39:46]完美世界DOTA2联赛PWL S2 LBZS vs Rebirth 第二场 11.25
2020/11/25 DOTA
pytyon 带有重复的全排列
2013/08/13 Python
python避免死锁方法实例分析
2015/06/04 Python
Python实现监控程序执行时间并将其写入日志的方法
2015/06/30 Python
Python根据区号生成手机号码的方法
2015/07/08 Python
python实现单向链表详解
2018/02/08 Python
python使用递归的方式建立二叉树
2019/07/03 Python
python+jinja2实现接口数据批量生成工具
2019/08/28 Python
python如何爬取网页中的文字
2020/07/28 Python
Docker如何部署Python项目的实现详解
2020/10/26 Python
联想美国官方商城:Lenovo美国
2017/06/19 全球购物
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
SQL注入攻击的种类有哪些
2013/12/30 面试题
4s店销售经理岗位职责
2014/07/19 职场文书