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 相关文章推荐
javascript getElementsByClassName实现代码
Oct 11 Javascript
学习面向对象之面向对象的术语
Nov 30 Javascript
在JavaScript中使用timer示例
May 08 Javascript
innerHTML在IE中报错解决方案
Dec 15 Javascript
基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用
May 12 Javascript
使用plupload自定义参数实现多文件上传
Jul 19 Javascript
浅谈JS验证表单文本域输入空格的问题
Feb 14 Javascript
JS排序之冒泡排序详解
Apr 08 Javascript
浅析JavaScript中的平稳退化(graceful degradation)
Jul 24 Javascript
node.js中fs文件系统目录操作与文件信息操作
Feb 24 Javascript
vue2.0实现音乐/视频播放进度条组件
Jun 06 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
Nov 05 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
基于php设计模式中工厂模式详细介绍
2013/05/15 PHP
xmlHTTP实例
2006/10/24 Javascript
为指定元素增加样式的js代码
2009/12/09 Javascript
div层的移动及性能优化
2010/11/16 Javascript
jquery isType() 类型判断代码
2011/02/14 Javascript
基于jquery的点击链接插入链接内容的代码
2012/07/31 Javascript
javascript中常用编程知识
2013/04/08 Javascript
分析Node.js connect ECONNREFUSED错误
2013/04/09 Javascript
Jquery加载时从后台读取数据绑定到dropdownList实例
2013/06/09 Javascript
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
js弹性势能动画之抛物线运动实例详解
2017/07/27 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
jQuery niceScroll滚动条错位问题的解决方法
2018/02/03 jQuery
vue输入框使用模糊搜索功能的实现代码
2020/05/26 Javascript
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
python Pygame的具体使用讲解
2017/11/03 Python
详解Python 实现元胞自动机中的生命游戏(Game of life)
2018/01/27 Python
Python中defaultdict与lambda表达式用法实例小结
2018/04/09 Python
django框架防止XSS注入的方法分析
2019/06/21 Python
python Matplotlib底图中鼠标滑过显示隐藏内容的实例代码
2019/07/31 Python
python实现指定ip端口扫描方式
2019/12/17 Python
TensorFlow查看输入节点和输出节点名称方式
2020/01/04 Python
Python-openpyxl表格读取写入的案例详解
2020/11/02 Python
详解CSS3中Media Queries的相关使用
2015/07/17 HTML / CSS
canvas中普通动效与粒子动效的实现代码示例
2019/01/03 HTML / CSS
美国儿童玩具、装扮和玩偶商店:Magic Cabin
2018/09/02 全球购物
局域网定义和特性
2016/01/23 面试题
销售人员中英文自荐信
2013/09/22 职场文书
财务副总经理工作职责
2013/11/25 职场文书
幼儿园门卫岗位职责
2014/02/14 职场文书
保险专业大学生职业规划书
2014/03/03 职场文书
项目建议书格式
2014/03/12 职场文书
广播节目策划方案
2014/05/23 职场文书
网站出售协议书范文
2014/10/10 职场文书
Python 类,对象,数据分类,函数参数传递详解
2021/09/25 Python