问题:在html中编写网页,一个table,需要按列对table进行排序。

方法:使用JavaScript自带的sort函数进行排序。

注意:在html文件中,所有的函数及操作均应写在

<script type="text/javascript">

</script>

中,直接在<body></body>中写函数是无法执行的。

实例代码:

1.整数类型排序

<script type="text/javascript">

 function sortNumber(a, b) {
             return a - b
         }

 var arrNum = new Array(6);
         arrNum[0] = "6";
         arrNum[1] = "4";
         arrNum[2] = "5";
         arrNum[3] = "3";
         arrNum[4] = "1";
         arrNum[5] = "2";

<!--下面为排序过程,调用了前述的sortNumber函数,采用冒泡排序的方法-->

         arrNum.sort(sortNumber);

  <!--排序不产生新的数组,直接将原数组替换为排序后的数组,调用排序后数组元素的表达式为 arrNum.sort(sortNumber)[n],n为数组下标-->

<!--显示排序后数组的第一个元素,下标为0-->

            document.write(arrNum.sort(sortNumber)[0]);

</script>

2.英文字符类型排序

<script type="text/javascript">

    var arrNam = new Array(6);
         arrNam[0] = "b";
         arrNam[1] = "a";
         arrNam[2] = "e";
         arrNam[3] = "d";
         arrNam[4] = "c";
         arrNam[5] = "f";

<!--下面为排序过程-->

          arrNam.sort();

<!--其他与整数类型排序类似-->

        </script>

3.中文字符排序,涉及到编码问题,使用sort函数不能得到按拼音排序的结果。

<script type="text/javascript">

var arrSource = new Array(6);
         arrSource[0] = "风";
         arrSource[1] =  "景" ;
         arrSource[2] =  "这" ;
         arrSource[3] =  "边" ;
         arrSource[4] =  "独" ;
         arrSource[5] =  "好" ;

<!--下面为排序过程,调用localeCompare()函数,使用本地编码方式进行排序-->

   arrSource.sort(function (a, b) { return a.localeCompare(b) });

<!--其他与整数类型排序类似-->

        </script>