2006-08-03

Dom  Javascript 在本机浏览器中对的表格数据进行排序

来源: CSDN 作者:lzid2008 评论 0 条
 


以上介绍了在本地对浏览器中的数据进行排序的主要思想,为方便使用,将这些功能进行了封装,以javascript函数的提供,存放在sorttable.js文件中,在需要的页面中用<script type=text/javascript src='sorttable.js'></script>引入。


下面说明排序函数原型和使用方法。

函数1 function sortTable(tableId,sortCol,compareType)
对页面中指定表格中的数据进行排序,通常第一行为标题行,排序时从第二行开始,第一次调用为升序排列,第二次为降序排列,依次轮换。
tableId 为<table id=''>中id的值,在同一个页面中要唯一。
sortCol 排序时用来比较大小的数据所在的列,从1开始计数。
compareType 排序时比较大小的方式,s-按字符串比较大小,n-按数字比较大小。



函数2 function sortTableInRange(tableId,sortCol,compareType,startRow,endRow,startCol,endCol)

对表格中指定的区域数据排序,有时数据第一列为流水号,最后一行为合计,这些数据不需要参与排序,可用此函数来对部分数据排序。

tableId 为<table id=''>中id的值,在同一个页面中要唯一。
sortCol 排序时用来比较大小的数据所在的列,从1开始计数。
compareType 排序时比较大小的方式,s-按字符串比较大小,n-按数字比较大小。
startRow,endRow 要排序区域开始和结束行号,从1开始计数。例如对第2行到第7行排序,startRow=2,endRow=7
startCol,endCol 要排序区域开始和结束列号,从1开始计数。





存在的问题:
1- 中文不能按拼音排序。


要注重的问题:
要排序的table必须用ID标示,并要作为参数传给排序函数,表格中的数据应该是可以排序的,否则结果不可预知;要排序的表格不能有嵌套表,否则排序出错。


本函数已在IE6.0 ,FireFox1.01中运行通过。源代码和例子代码见后。




参考资料:

Danny Goodman with Michael Morrison JavaScript Bible 5th ,John Wiley and Sons 2004

David Flanagan JavaScript The Definitive Guide 4th , O'Reilly 2001





附源代码:要运行例子,需要将javascript代码保存到sorttable.js文件中,html部分代码保存到同一目录下另一文件中即可。


sorttable.js

//=========================================================
//
// 在本机对浏览器页面表格中的数据行进行排序的javascript函数
//
// author William QQ: 22967225
// create date 2005-12-2
// version 1.0
//=========================================================

//column index for sort
var indexCol;
//比较函数,用于Array.sort()排序时比较用。
//本函数比较数组元素array1[indexCol]和元素array2[indexCol]Unicode值的大小
function arrayCompare(array1,array2){
//alert(array1.length "--" array1[indexCol]);
if (array1[indexCol] < array2[indexCol])
return -1;
if (array1[indexCol] > array2[indexCol])
return 1;

return 0;

}
//比较数组元素array1[indexCol]和元素array2[indexCol]的数值大小
function arrayCompareNumber(array1,array2){

if (parseInt(array1[indexCol]) < parseInt(array2[indexCol]))
共6页: 上一页 [1] 2 [3] [4] [5] [6] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:取消网页各种禁止功能的解决方案  
下一篇:Lightbox JS v2.0
    评论加载中…

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号