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 相关文章推荐
九种js弹出对话框的方法总结
Mar 12 Javascript
js判断undefined变量类型使用typeof
Jun 03 Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
Nov 21 Javascript
JS+CSS实现仿雅虎另类滑动门切换效果
Oct 13 Javascript
JS模拟Dialog弹出浮动框效果代码
Oct 16 Javascript
Jquery Easyui表单组件Form使用详解(30)
Dec 19 Javascript
angular.js 路由及页面传参示例
Feb 24 Javascript
详解基于vue-router的动态权限控制实现方案
Sep 28 Javascript
Vue实现本地购物车功能
Dec 05 Javascript
解决layui中onchange失效以及form动态渲染失效的问题
Sep 27 Javascript
深入学习Vue nextTick的用法及原理
Oct 08 Javascript
Node.JS获取GET,POST数据之queryString模块使用方法详解
Feb 06 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脚本的10个技巧(5)
2006/10/09 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
2013/09/30 PHP
php实现获取及设置用户访问页面语言类
2014/09/24 PHP
Zend Framework教程之连接数据库并执行增删查的方法(附demo源码下载)
2016/03/21 PHP
解决laravel 出现ajax请求419(unknown status)的问题
2019/09/03 PHP
javascript实现的动态文字变换
2007/07/28 Javascript
js 表格隔行颜色
2009/12/02 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
Javascript对象属性方法汇总
2013/11/21 Javascript
jQuery+ajax实现鼠标单击修改内容的思路
2014/06/29 Javascript
浅析2种JavaScript继承方式
2015/12/04 Javascript
JS弹出窗口插件zDialog简单用法示例
2016/06/12 Javascript
jQuery多级联动下拉插件chained用法示例
2016/08/20 Javascript
深入浅析Nodejs的Http模块
2017/06/20 NodeJs
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
详谈js中标准for循环与foreach(for in)的区别
2017/11/02 Javascript
React.Js添加与删除onScroll事件的方法详解
2017/11/03 Javascript
微信小程序 scroll-view实现锚点滑动的示例
2017/12/06 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
2018/02/01 Javascript
简述JS控制台的使用
2018/07/15 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
JS canvas绘制五子棋的棋盘
2020/05/28 Javascript
详解如何使用router-link对象方式传递参数?
2019/05/02 Javascript
Python实现点阵字体读取与转换的方法
2019/01/29 Python
python批量下载抖音视频
2019/06/17 Python
浅析Python 引号、注释、字符串
2019/07/25 Python
Django REST framwork的权限验证实例
2020/04/02 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
如何开发一个JQuery插件
2016/07/28 面试题
公司员工活动策划方案
2014/08/20 职场文书
电影小兵张嘎观后感
2015/06/03 职场文书
关于远足的感想
2015/08/10 职场文书
情况说明书怎么写
2015/10/08 职场文书
低端且暴利的线上线下创业项目分享
2019/09/03 职场文书
vue实现拖拽交换位置
2022/04/07 Vue.js