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 相关文章推荐
AJAX异步从优酷专辑中采集所有视频及信息(JavaScript代码)
Nov 20 Javascript
自己做的模拟模态对话框实现代码
May 23 Javascript
JavaScript中的Math 使用介绍
Apr 21 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
Jan 02 Javascript
浅谈javascript面向对象程序设计
Jan 21 Javascript
浅谈javascript 函数表达式和函数声明的区别
Jan 05 Javascript
Js+Ajax,Get和Post在使用上的区别小结
Jun 08 Javascript
angularjs实现文字上下无缝滚动特效代码
Sep 04 Javascript
JavaScript仿微博输入框效果(案例分析)
Dec 06 Javascript
vue中路由参数传递可能会遇到的坑
Dec 07 Javascript
浅析Node.js非对称加密方法
Jan 29 Javascript
支付宝小程序自定义弹窗dialog插件的实现代码
Nov 30 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使用memcache缓存技术提高响应速度的方法
2014/12/26 PHP
PHP实现的XML操作类【XML Library】
2016/12/29 PHP
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
7个jQuery最佳实践
2016/01/12 Javascript
JS中递归函数
2016/06/17 Javascript
jQuery输入框密码的显示隐藏【代码分享】
2017/04/29 jQuery
微信小程序中使用Promise进行异步流程处理的实例详解
2017/08/17 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
vue vuex vue-rouert后台项目——权限路由(适合初学)
2017/12/29 Javascript
解决linux下node.js全局模块找不到的问题
2018/05/15 Javascript
详解vue如何使用rules对表单字段进行校验
2018/10/17 Javascript
Next.js项目实战踩坑指南(笔记)
2018/11/29 Javascript
JavaScript变速动画函数封装添加任意多个属性
2019/04/03 Javascript
vue 父组件通过v-model接收子组件的值的代码
2019/10/27 Javascript
微信小程序基于movable-view实现滑动删除效果
2020/01/08 Javascript
[01:35:53]完美世界DOTA2联赛PWL S3 Magma vs GXR 第二场 12.13
2020/12/17 DOTA
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
2013/11/15 Python
python3使用tkinter实现ui界面简单实例
2014/01/10 Python
python机器学习理论与实战(四)逻辑回归
2018/01/19 Python
Tensorflow环境搭建的方法步骤
2018/02/07 Python
tensorflow实现softma识别MNIST
2018/03/12 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
使用anaconda安装pytorch的实现步骤
2020/09/03 Python
python实现跨年表白神器--你值得拥有
2021/01/04 Python
python 逆向爬虫正确调用 JAR 加密逻辑
2021/01/12 Python
Nike爱尔兰官方网站:Nike.com (IE)
2018/03/12 全球购物
微软瑞士官方网站:Microsoft瑞士
2018/04/20 全球购物
阿迪达斯希腊官方网上商店:adidas希腊
2019/04/06 全球购物
中国文明网签名寄语
2014/01/18 职场文书
教师产假请假条范文
2014/04/10 职场文书
求职简历自荐信
2014/06/18 职场文书
党支部对照检查材料
2014/08/25 职场文书
2014年科室工作总结范文
2014/12/19 职场文书
Idea连接MySQL数据库出现中文乱码的问题
2021/04/14 MySQL
python如何将mat文件转为png
2022/07/15 Python