加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

使用JavaScript我们可以对表格的数据进行按某些属性进行的排序

发布时间:2023-10-17 15:02:29 所属栏目:教程 来源:
导读:比较函数生成器:

代码如下:

/**

* 比较函数生成器

*

* @param iCol

* 数据行数

* @param sDataType

* 该行的数据类型

* @return

*/

fu
比较函数生成器:
 
代码如下:
 
/**
 
 * 比较函数生成器
 
 *
 
 * @param iCol
 
 *            数据行数
 
 * @param sDataType
 
 *            该行的数据类型
 
 * @return
 
 */
 
function  generateCompareTRs(iCol, sDataType) {
 
     return   function  compareTRs(oTR1, oTR2) {
 
        vValue1 = convert(oTR1.cells[iCol].firstChild.nodeValue, sDataType);
 
        vValue2 = convert(oTR2.cells[iCol].firstChild.nodeValue, sDataType);
 
         if  (vValue1 < vValue2) {
 
             return  -1;
 
        }  else   if  (vValue1 > vValue2) {
 
             return  1;
 
        }  else  {
 
             return  0;
 
        }
 
    };
 
}
 
处理比较字符类型:
 
代码如下:
 
/**
 
 * 处理排序的字段类型
 
 *
 
 * @param sValue
 
 *            字段值 默认为字符类型即比较ASCII码
 
 * @param sDataType
 
 *            字段类型 对于date只支持格式为mm/dd/yyyy或mmmm dd,yyyy(January 12,2004)
 
 * @return
 
 */
 
function  convert(sValue, sDataType) {
 
     switch  (sDataType) {
 
     case   "int" :
 
         return  parseInt(sValue);
 
     case   "float" :
 
         return  parseFloat(sValue);
 
     case   "date" :
 
         return   new  Date(Date.parse(sValue));
 
     default :
 
         return  sValue.toString();
 
    }
 
}
 
主函数:
 
代码如下:
 
/**
 
 * 通过表头对表列进行排序
 
 *
 
 * @param sTableID
 
 *            要处理的表ID<table id=''>
 
 * @param iCol
 
 *            字段列id eg: 0 1 2 3 ...
 
 * @param sDataType
 
 *            该字段数据类型 int,float,date 缺省情况下当字符串处理
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章