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 相关文章推荐
jquery和javascript的区别(常用方法比较)
Jul 04 Javascript
jquery 实现密码框的显示与隐藏示例代码
Sep 18 Javascript
jquery滚动条插件jScrollPane的使用介绍
Nov 08 Javascript
如何设置一定时间内只能发送一次请求
Feb 28 Javascript
5款JavaScript代码压缩工具推荐
Jul 07 Javascript
基于JavaScript实现生成名片、链接等二维码
Sep 20 Javascript
jquery实现可旋转可拖拽的文字效果代码
Jan 27 Javascript
jQuery遍历DOM元素与节点方法详解
Apr 14 Javascript
AngularJS bootstrap启动详解及实例代码
Sep 14 Javascript
原生js开发的日历插件
Feb 04 Javascript
Antd的table组件表格的序号自增操作
Oct 27 Javascript
VueCli生产环境打包部署跨域失败的解决
Nov 13 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
Parse正式发布开源PHP SDK
2014/08/11 PHP
php数组合并与拆分实例分析
2015/06/12 PHP
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
2016/02/22 PHP
非集成环境的php运行环境(Apache配置、Mysql)搭建安装图文教程
2016/04/12 PHP
php字符串操作针对负值的判断分析
2016/07/28 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
2019/10/24 PHP
js实现权限树的更新权限时的全选全消功能
2009/02/17 Javascript
javascript 另一种图片滚动切换效果思路
2012/04/20 Javascript
js实现单一html页面两套css切换代码
2013/04/11 Javascript
原生JS操作网页给p元素添加onclick事件及表格隔行变色
2013/12/01 Javascript
使用POST方式弹出窗口的两种方法示例介绍
2014/01/29 Javascript
浅谈jQuery异步对象(XMLHttpRequest)
2014/11/17 Javascript
jQuery中[attribute]选择器用法实例
2014/12/31 Javascript
Javascript获取background属性中url的值
2016/10/17 Javascript
canvas 实现中国象棋
2017/02/17 Javascript
简单实现JavaScript弹幕效果
2020/08/27 Javascript
vue项目中实现的微信分享功能示例
2019/01/21 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
2020/03/11 Javascript
vue-cli3项目配置eslint代码规范的完整步骤
2020/09/10 Javascript
ESLint 是如何检查 .vue 文件的
2020/11/30 Vue.js
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
[00:58]他们到底在电话里听到了什么?
2017/11/21 DOTA
[01:19:46]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
Python守护进程(daemon)代码实例
2015/03/06 Python
改进Django中的表单的简单方法
2015/07/17 Python
python计算Content-MD5并获取文件的Content-MD5值方式
2020/04/03 Python
Python爬虫之Spider类用法简单介绍
2020/08/04 Python
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
.NET常见笔试题集
2012/12/01 面试题
建筑毕业生自我鉴定
2013/10/18 职场文书
大学生个人求职信
2014/06/02 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
导游经典开场白——导游词
2019/04/17 职场文书
腾讯云服务器部署前后分离项目之前端部署
2022/06/28 Servers