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

 更新时间:2016年12月20日 08:49:38   作者:鬼畜十三  
这篇文章主要介绍了JS简单实现表格排序功能,涉及javascript针对页面元素的遍历、判断与排序相关操作技巧,需要的朋友可以参考下

本文实例讲述了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操作DOM技巧总结》、《JavaScript数组操作技巧总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结

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

相关文章

  • 在一般处理程序(ashx)中弹出js提示语

    在一般处理程序(ashx)中弹出js提示语

    这篇文章主要介绍了在一般处理程序(ashx)中弹出js提示语的相关资料,需要的朋友可以参考下
    2017-08-08
  • JavaScript调用C语言的几种方式

    JavaScript调用C语言的几种方式

    本文主要介绍了JavaScript调用C语言的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • 封装了一个支持匿名函数的Javascript事件监听器

    封装了一个支持匿名函数的Javascript事件监听器

    这篇文章主要介绍了支持匿名函数的Javascript事件监听封装,需要的朋友可以参考下
    2014-06-06
  • 每天一篇javascript学习小结(Date对象)

    每天一篇javascript学习小结(Date对象)

    这篇文章主要介绍了javascript中的Date对象知识点,对Date对象的基本使用方法,以及各种方法进行整理,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • smartupload实现文件上传时获取表单数据(推荐)

    smartupload实现文件上传时获取表单数据(推荐)

    这篇文章主要介绍了smartupload实现文件上传时获取表单数据的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-12-12
  • JS原型、原型链深入理解

    JS原型、原型链深入理解

    这篇文章主要针对javascript中的原型、原型链深入理解,原型是JavaScript中一个比较难理解的概念,本文为大家解决这个难题,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • JavaScript计算两个日期时间段内日期的方法

    JavaScript计算两个日期时间段内日期的方法

    这篇文章主要介绍了JavaScript计算两个日期时间段内日期的方法,涉及javascript操作时间的技巧,需要的朋友可以参考下
    2015-03-03
  • javascript 变态的节点集合

    javascript 变态的节点集合

    今天想实现jQuery的unwrap效果,换言之,就是用其孩子把其父节点干掉。为了效率,用到文档碎片,而取孩子时使用到childNodes(返回一个nodeList)
    2010-03-03
  • KnockoutJs快速入门教程

    KnockoutJs快速入门教程

    这篇文章主要为大家分享了KnockoutJs快速入门教程,了解KnockoutJs到底是什么?如何使用KnockoutJS中的data-bind语法来将模型数据绑定到DOM元素中,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • 使用Xcache缓存器加速PHP网站的配置方法

    使用Xcache缓存器加速PHP网站的配置方法

    从访问速度上来看,一般要比放于国内的网站慢2-3倍,所以便想办法对网站做了一些简单的优化,比如使用缓存系统来提升网站页面访问速度
    2017-04-04

最新评论