JS实现简单表格排序操作示例


Posted in Javascript onOctober 07, 2017

本文实例讲述了JS实现简单表格排序操作。分享给大家供大家参考,具体如下:

<!DOCTYPE>
<html>
<head>
  <meta http-equiv="Content-type" content="text/html" charset="utf-8">
  <title>sort table</title>
  <style>
    *{
      margin:0px;
      padding:0px;
    }
    body{
      background:#ccc;
    }
    table{
      width:350px;
      margin:0 auto;
      background-color:#eee;
    }
    table th{
      cursor:hand;
      padding:5px 0;
      background-color:#999;
    }
    table td{
      background-color:#fff;
      font-size:16px;
      font-weight:normal;
      text-align:center;
      line-height:30px;
    }
  </style>
  <script language="javascript">
    function sortCells(type){
      var tbs=document.getElementsByTagName("table")[0];
      var arr=[];
      var arr2=[];
      for(var i=1;i<tbs.rows.length;i++){
        var text=tbs.rows[i].cells[type].innerText;
        arr.push(text);
        arr2[text]=i;
      }
      if(type==0){
        arr.sort(function(a,b){return a-b});
      }else{
        arr.sort();
      }
      var temp="";
      for(var j=1;j<tbs.rows.length;j++){
        temp=tbs.rows[j].cells[0].innerText;
        tbs.rows[j].cells[0].innerText=tbs.rows[arr2[arr[j-1]]].cells[0].innerText;
        tbs.rows[arr2[arr[j-1]]].cells[0].innerText=temp;
        temp=tbs.rows[j].cells[1].innerText;
        tbs.rows[j].cells[1].innerText=tbs.rows[arr2[arr[j-1]]].cells[1].innerText;
        tbs.rows[arr2[arr[j-1]]].cells[1].innerText=temp;
        temp=tbs.rows[j].cells[2].innerText;
        tbs.rows[j].cells[2].innerText=tbs.rows[arr2[arr[j-1]]].cells[2].innerText;
        tbs.rows[arr2[arr[j-1]]].cells[2].innerText=temp;
//        console.log(arr2);
        for(var i=1;i<tbs.rows.length;i++){
          var text=tbs.rows[i].cells[type].innerText;
          arr2[text]=i;
        }
      }
    }
  </script>
</head>
<body>
<center>sort table</center>
<table border="0">
  <tr>
    <th onclick="sortCells(0);">序号</th>
    <th onclick="sortCells(1);">姓名</th>
    <th onclick="sortCells(2);">日期</th>
  </tr>
  <tr>
    <td>2</td>
    <td>BB</td>
    <td>2015-09-12</td>
  </tr>
   <tr>
    <td>3</td>
    <td>CC</td>
    <td>2015-07-12</td>
  </tr>
   <tr>
    <td>1</td>
    <td>AA</td>
    <td>2015-09-11</td>
  </tr>
   <tr>
    <td>4</td>
    <td>DD</td>
    <td>2015-06-12</td>
  </tr>
</table>
</body>
</html>

运行效果:

JS实现简单表格排序操作示例

JS实现简单表格排序操作示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript document.execCommand() 常用解析
Dec 14 Javascript
js读取本地excel文档数据的代码
Nov 11 Javascript
idTabs基于JQuery的根据URL参数选择Tab插件
Apr 11 Javascript
用js正确判断用户名cookie是否存在的方法
Jan 28 Javascript
javascript 密码框防止用户粘贴和复制的实现代码
Feb 17 Javascript
分享js粘帖屏幕截图到web页面插件screenshot-paste
Aug 21 Javascript
jQuery实现字符串全部替换的方法【推荐】
Mar 09 Javascript
BootStrap实现文件上传并带有进度条效果
Sep 11 Javascript
利用js编写网页进度条效果
Oct 08 Javascript
原生js实现简单的焦点图效果实例
Dec 14 Javascript
electron demo项目npm install安装失败的解决方法
Feb 06 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
Nov 02 Javascript
javascript数组定义的几种方法
Oct 06 #Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
Oct 06 #Javascript
node.js中http模块和url模块的简单介绍
Oct 06 #Javascript
你应该知道的几类npm依赖包管理详解
Oct 06 #Javascript
vue-cli构建项目使用 less的方法
Oct 04 #Javascript
浅谈Angular2 模块懒加载的方法
Oct 04 #Javascript
浅谈angular2路由预加载策略
Oct 04 #Javascript
You might like
php设计模式 Observer(观察者模式)
2011/06/26 PHP
需要注意的几个PHP漏洞小结
2012/02/05 PHP
PHP高手需要要掌握的知识点
2014/08/21 PHP
PHP多态代码实例
2015/06/26 PHP
在PHP中使用FastCGI解析漏洞及修复方案
2015/11/10 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
2007/01/09 Javascript
js操作iframe兼容各种主流浏览器示例代码
2013/07/22 Javascript
jQuery实现行文字链接提示效果的方法
2015/03/10 Javascript
jquery控制表单输入框显示默认值的方法
2015/05/22 Javascript
iScroll.js 使用方法参考
2016/05/16 Javascript
Node.js中.pfx后缀文件的处理方法
2017/03/10 Javascript
老生常谈jacascript DOM节点获取
2017/04/17 Javascript
vuejs使用FormData实现ajax上传图片文件
2017/08/08 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
2017/09/12 Javascript
webpack实用小功能介绍
2018/01/02 Javascript
vue父组件点击触发子组件事件的实例讲解
2018/02/08 Javascript
JS使用setInterval计时器实现挑战10秒
2020/11/08 Javascript
Python实现快速多线程ping的方法
2015/07/15 Python
python利用正则表达式提取字符串
2016/12/08 Python
详解python进行mp3格式判断
2016/12/23 Python
用PyInstaller把Python代码打包成单个独立的exe可执行文件
2018/05/26 Python
Python中函数参数调用方式分析
2018/08/09 Python
Python爬虫小技巧之伪造随机的User-Agent
2018/09/13 Python
在Python中增加和插入元素的示例
2018/11/01 Python
Python lxml解析HTML并用xpath获取元素的方法
2019/01/02 Python
python 一个figure上显示多个图像的实例
2019/07/08 Python
pyftplib中文乱码问题解决方案
2020/01/11 Python
python为QT程序添加图标的方法详解
2020/03/09 Python
Python 开发工具通过 agent 代理使用的方法
2020/09/27 Python
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
The North Face北面美国官网:美国著名户外品牌
2018/09/15 全球购物
控制工程专业个人求职信
2013/09/25 职场文书
2015年新学期寄语
2015/02/26 职场文书
幼儿园安全教育月活动总结
2015/05/08 职场文书