JavaScript-表格排序

Posted 万里奔腾

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript-表格排序相关的知识,希望对你有一定的参考价值。

一、知识

  appendChild():先删除,在排序

  sort():数组排序

  parseInt(): 将字符串==》整数(数字)

!!!- html

  <input id="btn1" type="button" value="排序" />
  <table id="tab1" border="1" width="500">
  <thead>
    <td>ID</td>
    <td>姓名</td>
    <td>年龄</td>
    <td>操作</td>
  </thead>
  <tbody>
    <tr>
      <td>2</td>
      <td>张三</td>
      <td>23</td>
      <td></td>
    </tr>
    <tr>
      <td>6</td>
      <td>王四</td>
      <td>24</td>
      <td></td>
    </tr>
    <tr>
      <td>1</td>
      <td>Blue</td>
      <td>27</td>
      <td></td>
    </tr>
    <tr>
      <td>5</td>
      <td>张伟</td>
      <td>24</td>
      <td></td>
    </tr>
    <tr>
      <td>3</td>
      <td>李四</td>
      <td>28</td>
      <td></td>
    </tr>
    <tr>
      <td>4</td>
      <td>王五</td>
      <td>25</td>
      <td></td>
    </tr>
  </tbody>
</table>

 

!!! JS

window.onload=function ()
{
  var oTab=document.getElementById(‘tab1‘);
  var oBtn=document.getElementById(‘btn1‘);

  oBtn.onclick=function ()
  {
    var arr=[];                //先创建一个空数组,里面存放的是要排序的值

    for(var i=0;i<oTab.tBodies[0].rows.length;i++)
    {
      arr[i]=oTab.tBodies[0].rows[i];        //数组得到了表格里面的数据
    }

    arr.sort(function (tr1, tr2){               
      var n1=parseInt(tr1.cells[0].innerHTML);
      var n2=parseInt(tr2.cells[0].innerHTML);

      return n1-n2;
    });

    for(var i=0;i<arr.length;i++)
    {
      oTab.tBodies[0].appendChild(arr[i]);
    }
  };
};









































































以上是关于JavaScript-表格排序的主要内容,如果未能解决你的问题,请参考以下文章

使用 JavaScript 对 HTML 表格进行排序

通过 Javascript 对 HTML 表格进行排序

通过 JavaScript 对 HTML 表格进行排序的最有效方法是啥?

HTML表格的JavaScript不区分大小写排序

JavaScript:表格排序

javascript表格排序原理