JS简单实现表格排序功能示例


Posted in Javascript onDecember 20, 2016

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

思路遍历每个li,并把它们存放到数组中去,然后通过sort()方法进行排序,再插入

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>排序</title>
</head>
<body>
  <input type="button" value="排序按钮" id="btn1">
  <ul id="ul1">
    <li>58</li>
    <li>8</li>
    <li>31</li>
    <li>98</li>
    <li>75</li>
  </ul>
<script type="text/javascript">
  window.onload=function(){
    var oBtn=document.getElementById("btn1");
    var arr=[];
    var oUl=document.getElementById("ul1");
    var aLi=oUl.getElementsByTagName("li");
    var i;
    var bAsc=true;
    oBtn.onclick=function(){
      for(i=0;i<aLi.length;i++){
        arr[i]=aLi[i];
      }
      arr.sort(function(li1,li2){
        if(bAsc){
          return parseInt(li1.innerHTML)-parseInt(li2.innerHTML);
        }
        else{
          return parseInt(li2.innerHTML)-parseInt(li1.innerHTML);
        }
      });
      for(i=0;i<arr.length;i++){
        oUl.appendChild(arr[i]); //appendChild实际上分两步  1.先移除父级 2.添加到新的父级 (添加到原本的父级就相当于把当前元素拿到队列的末尾)
      }
      if(bAsc){
        bAsc=false;
      } //==>bAsc=!bAsc;  //简化写法
      else{
        bAsc=true;
      }
    };
  }
</script>
</body>
</html>

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

Javascript 相关文章推荐
Hutia 的 JS 代码集
Oct 24 Javascript
代码精简的可以实现元素圆角的js函数
Jul 21 Javascript
读JavaScript DOM编程艺术笔记
Nov 15 Javascript
使用jQuery避免鼠标双击的解决方案
Aug 21 Javascript
用js的for循环获取radio选中的值
Oct 21 Javascript
jqPlot jQuery绘图插件的使用
Jun 18 Javascript
weUI应用之JS常用信息提示弹层的封装
Nov 21 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
Jul 30 Javascript
十分钟带你快速了解React16新特性
Nov 10 Javascript
解析Vue2 dist 目录下各个文件的区别
Nov 22 Javascript
Node.js EventEmmitter事件监听器用法实例分析
Jan 07 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
Aug 22 Javascript
深入了解JavaScript的逻辑运算符(与、或)
Dec 20 #Javascript
js定时器实例分享
Dec 20 #Javascript
BootStrap Table 获取同行不同列元素的方法
Dec 19 #Javascript
Jquery Easyui进度条组件Progress使用详解(8)
Mar 26 #Javascript
详解Jquery的事件操作和文档操作
Dec 19 #Javascript
如何解决jQuery EasyUI 已打开Tab重新加载问题
Dec 19 #Javascript
详解用原生JavaScript实现jQuery的某些简单功能
Dec 19 #Javascript
You might like
destoon之一键登录设置
2014/06/21 PHP
PHP实现利用MySQL保存session的方法
2014/08/23 PHP
PHP实用函数分享之去除多余的0
2015/02/06 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
php类的扩展和继承用法实例
2015/06/20 PHP
Symfony2实现在controller中获取url的方法
2016/03/18 PHP
Yii Framework框架使用PHPExcel组件的方法示例
2019/07/24 PHP
用方法封装javascript的new操作符(一)
2010/12/25 Javascript
如何用JavaScript动态呼叫函数(两种方式)
2013/05/03 Javascript
千分位数字格式化(用逗号隔开 代码已做了修改 支持0-9位逗号隔开)的JS代码
2013/12/05 Javascript
JS实现下拉菜单赋值到文本框的方法
2015/08/18 Javascript
jquery图片轮播特效代码分享
2020/04/20 Javascript
jQuery与js实现颜色渐变的方法
2016/12/30 Javascript
JS实现简单打字测试
2020/06/24 Javascript
[01:08:29]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第一场 1月9日
2021/03/11 DOTA
Python按行读取文件的实现方法【小文件和大文件读取】
2016/09/19 Python
python获取网页中所有图片并筛选指定分辨率的方法
2018/03/31 Python
Python3.4学习笔记之列表、数组操作示例
2019/03/01 Python
selenium 安装与chromedriver安装的方法步骤
2019/06/12 Python
解决Python二维数组赋值问题
2019/11/28 Python
Pycharm导入anaconda环境的教程图解
2020/07/31 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
css3 中实现炫酷的loading效果
2019/04/26 HTML / CSS
CSS3 画基本图形,圆形、椭圆形、三角形等
2016/09/20 HTML / CSS
HTML5 Canvas实现放大镜效果示例
2020/03/25 HTML / CSS
凯伦·米莲女装网上商店:Karen Millen
2017/11/07 全球购物
加拿大在线眼镜零售商:SmartBuyGlasses加拿大
2019/05/25 全球购物
应用艺术毕业生的自我评价
2013/12/04 职场文书
校园文化标语
2014/06/18 职场文书
群众路线教育实践活动批评与自我批评
2014/09/15 职场文书
详解盒子端CSS动画性能提升
2021/05/24 HTML / CSS
python代码实现备忘录案例讲解
2021/07/26 Python
与Windows10相比Windows11有哪些改进?值不值得升级?
2021/11/21 数码科技
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL
python超详细实现完整学生成绩管理系统
2022/03/17 Python
「回转企鹅罐」10周年纪念展「輪るピングドラム展」海报公开
2022/03/22 日漫