javascript 表格内容排序 简单操作示例代码


Posted in Javascript onJanuary 03, 2014
<div id="html"></div> 
<script> 
var listInfos = new Array(); 
listInfos[0] = new Array(); 
listInfos[0][0] = {'name':'推荐页1','DayCount':666,'AvgTime':29872,'ErrCount':180663,'ErrorRate':'2873%','DaySystemErrorCount':0,'DaySystemrErrorRate':'0%'} 
listInfos[0][1] = {'name':'推荐页2','DayCount':593896,'AvgTime':24946,'ErrCount':222,'ErrorRate':'2%','DaySystemErrorCount':0,'DaySystemrErrorRate':'0%'} 
listInfos[0][2] = {'name':'推荐页3','DayCount':956,'AvgTime':27957,'ErrCount':111,'ErrorRate':'10%','DaySystemErrorCount':0,'DaySystemrErrorRate':'0%'} 
listInfos[1] = new Array(); 
listInfos[1][0] = {'name':'推荐页4','DayCount':666,'AvgTime':116,'ErrCount':180663,'ErrorRate':'2873%','DaySystemErrorCount':0,'DaySystemrErrorRate':'0%'} 
listInfos[1][1] = {'name':'推荐页5','DayCount':11,'AvgTime':222,'ErrCount':222,'ErrorRate':'2%','DaySystemErrorCount':0,'DaySystemrErrorRate':'0%'} 
listInfos[1][2] = {'name':'推荐页6','DayCount':956,'AvgTime':956,'ErrCount':111,'ErrorRate':'10%','DaySystemErrorCount':0,'DaySystemrErrorRate':'0%'} 
function dateDesc(listInfos,field){ 
for( var i=0; i < listInfos.length ; i++ ){ 
for( var j = i+1 ; j < listInfos.length ; j++ ){ 
if( isCommaPercent(listInfos[i][field]) < isCommaPercent(listInfos[j][field]) ){ 
var arrayTemp = new Array(); 
arrayTemp = listInfos[i]; 
listInfos[i] = listInfos[j]; 
listInfos[j] = arrayTemp; 
} } 
} 
return listInfos; 
} 
function dataAsc(listInfos,field){ 
for( var i=0; i < listInfos.length ; i++ ){ 
for( var j = i+1 ; j < listInfos.length ; j++ ){ 
if( isCommaPercent(listInfos[i][field]) > isCommaPercent(listInfos[j][field]) ){ 
var arrayTemp = new Array(); 
arrayTemp = listInfos[i]; 
listInfos[i] = listInfos[j]; 
listInfos[j] = arrayTemp; 
} 
} 
} 
return listInfos; 
} 
function isCommaPercent(value){ 
var valueFloat; 
value = value.toLocaleString(); 
valueFloat = ( value.indexOf(',') > 0 )? value.split(',').join(''):value; 
valueFloat = (valueFloat.indexOf('%') > 0)?parseFloat(valueFloat.substr(0,valueFloat.indexOf('%'))): parseFloat(valueFloat); 
return valueFloat; 
} 

function sortOperation(sortInfos,field,sort){ 
var listInfos = new Array(); 
if( sort == 'desc' ){ 
for(var i=0; i < sortInfos.length ; i++ ){ 
listInfos[i] = dateDesc(sortInfos[i],field); 
} 
}else if( sort == 'asc' ){ 
for(var i=0; i < sortInfos.length ; i++ ){ 
listInfos[i] = dataAsc(sortInfos[i],field); 
} 
}else{ 
alert('操作错误...'); 
return false; 
} 
var tableStrList =''; 
for( var i=0; i < listInfos.length ; i++ ){ 
var tableStr='<h1>程序</h1>'; 
tableStr+= '<table width="100%" cellspacing="0" cellpadding="0" border="1" class="programTabble"><tbody><tr class="indexTableTr">'; 
tableStr +='<td width="16%">程序名称</td><td width="14%">当天访问量(次)</td><td width="14%">平均响应时间(us)</td><td width="14%">错误数(次)</td>'; 
tableStr +='<td width="14%">错误率(%)</td> <td width="14%">系统错误数(次)</td> <td width="14%">系统错误率(%)</td> </tr> '; 
for( var j = 0 ; j < listInfos[i].length ; j++ ){ 
tableStr +='<tr>'; 
tableStr +='<td><a href="detail.php?type=programs&pid=1">'+listInfos[i][j]['name']+'</a></td>'; 
tableStr +='<td>'+listInfos[i][j]['DayCount']+'</td>'; 
tableStr +='<td>'+listInfos[i][j]['AvgTime']+'</td>'; 
tableStr +='<td>'+listInfos[i][j]['ErrCount']+'</td>'; 
tableStr +='<td>'+listInfos[i][j]['ErrorRate']+'</td>'; 
tableStr +='<td>'+listInfos[i][j]['DaySystemErrorCount']+'</td>'; 
tableStr +='<td>'+listInfos[i][j]['DaySystemrErrorRate']+'</td>'; 
tableStr +='</tr>'; 
} 
tableStr +='</tbody></table>'; 
tableStrList += tableStr 
} 
document.getElementById("html").innerHTML=tableStrList; 
} 
sortOperation(listInfos,'DayCount','asc') 
</script>
Javascript 相关文章推荐
jQuery-onload让第一次页面加载时图片是淡入方式显示
May 23 Javascript
Js nodeType 属性全面解析
Nov 14 Javascript
使用FlexiGrid实现Extjs表格效果方法分享
Dec 16 Javascript
js获取checkbox值的方法
Jan 28 Javascript
JS修改地址栏参数实例代码
Jun 14 Javascript
node操作mysql数据库实例详解
Mar 17 Javascript
JavaScript生成图形验证码
Aug 24 Javascript
JavaScript调试之console.log调试的一个小技巧分享
Aug 07 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
Jun 10 jQuery
Vue + Elementui实现多标签页共存的方法
Jun 12 Javascript
js实现无缝轮播图特效
May 09 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
Aug 28 Javascript
通过JS来判断页面控件是否获取焦点
Jan 03 #Javascript
使用js判断控件是否获得焦点
Jan 03 #Javascript
js保留小数点后几位的写法
Jan 03 #Javascript
js判断字符是否是汉字的两种方法小结
Jan 03 #Javascript
jquery事件重复绑定的快速解决方法
Jan 03 #Javascript
浅析jquery某一元素重复绑定的问题
Jan 03 #Javascript
jquery live()重复绑定的解决方法介绍
Jan 03 #Javascript
You might like
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
2007/03/15 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
PHP判断数组是否为空的常用方法(五种方法)
2017/02/08 PHP
jquery实现marquee效果(文字或者图片的水平垂直滚动)
2013/01/07 Javascript
纯JS实现动态时间显示代码
2014/02/08 Javascript
Javascript window对象详解
2014/11/12 Javascript
jQuery中Ajax的load方法详解
2015/01/14 Javascript
js判断鼠标左、中、右键哪个被点击的方法
2015/01/27 Javascript
js计算文本框输入的字符数
2015/10/23 Javascript
js中的触发事件对象event.srcElement与event.target详解
2017/03/15 Javascript
AngularJS实现的select二级联动下拉菜单功能示例
2017/10/25 Javascript
vue-cli脚手架引入图片的几种方法总结
2018/03/13 Javascript
js中如何完美的解析数据
2018/03/18 Javascript
JavaScript callback回调函数用法实例分析
2018/05/08 Javascript
vue中动态设置meta标签和title标签的方法
2018/07/11 Javascript
微信小程序缓存过期时间的使用详情
2019/05/12 Javascript
微信小程序工具函数封装
2019/10/28 Javascript
nodejs实现UDP组播示例方法
2019/11/04 NodeJs
vue 授权获取微信openId操作
2020/11/13 Javascript
python求素数示例分享
2014/02/16 Python
Python中在脚本中引用其他文件函数的实现方法
2016/06/23 Python
python 专题九 Mysql数据库编程基础知识
2017/03/16 Python
使用memory_profiler监测python代码运行时内存消耗方法
2018/12/03 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
python内存动态分配过程详解
2019/07/15 Python
解决PDF 转图片时丢文字的一种可能方式
2021/03/04 Python
网上商城创业计划书范文
2014/01/31 职场文书
竞选班干部演讲稿
2014/04/24 职场文书
升学宴演讲稿
2014/09/01 职场文书
迟到检讨书2000字(精选篇)
2014/10/07 职场文书
2014年个人工作总结范文
2014/11/07 职场文书
党员自我评价2015
2015/03/03 职场文书
导游词之山西-五老峰
2019/10/07 职场文书
导游词之香港-太平山顶
2019/10/18 职场文书
详解NodeJS模块化
2021/06/15 NodeJs
openstack云计算keystone组件工作介绍
2022/04/20 Servers