html中table数据排序的js代码


Posted in Javascript onAugust 09, 2011

对了,注意那个innerText和innerHTML

function sortCells(event) { 
var obj = event.target; 
var count = 0; count是记录点击次数的,根据奇偶进行升序或降序 
if(!obj.getAttribute("clickCount")){ 
obj.setAttribute("clickCount", 0); 
} else { 
count = parseInt(obj.getAttribute("clickCount")); 
count++; 
obj.setAttribute("clickCount", count); 
} 
var table = event.target.parentNode.parentNode; 
if(table.nodeName.localeCompare("THEAD") == 0){ 
if(table.parentNode.nodeName.localeCompare("TABLE") == 0){ 
table = table.parentNode; 
} else { 
return; 
} 
} else if(table.nodeName.localeCompare("TBODY") == 0){ 
if(table.parentNode.nodeName.localeCompare("TABLE") == 0){ 
table = table.parentNode; 
} else { 
return; 
} 
} else if(table.nodeName.localeCompare("TABLE") == 0){ 
} else { 
return; 
} 
var colNum; 
for(x = 0; x < table.rows(1).cells.length; x++){ 
if(event.target.innerText.localeCompare(table.rows(0).cells[x].innerText) == 0){ 
colNum = x; 
break; 
} 
} 
var column = table.rows(1).cells.length; 
var row = table.rows.length; 
var Ar = new Array(row - 1); 
for (x = 0; x < row - 1; x++) { 
Ar[x] = new Array(column); 
} 
for (x = 1; x < row; x++) { 
for (y = 0; y < column; y++) { 
Ar[x - 1][y] = table.rows(x).cells(y).innerHTML; 
} 
} 

 //这个可以对字符串进行本地化排序 
/* if((count%2) == 0){ 
Ar.sort(function(a, b) { 
return b[colNum].localeCompare(a[colNum]) 
}); 
} else { 
Ar.sort(function(a, b) { 
return a[colNum].localeCompare(b[colNum]) 
}); 
} */ 
var temp; 
for (x = 0; x < row - 1; x++) { 
for (y = 1; y < row - 1; y++) { 
temp = Ar[y - 1]; 
if((count % 2) == 0){ 
if (parseInt(Ar[y - 1][colNum]) >= parseInt(Ar[y][colNum])) { 
Ar[y - 1] = Ar[y]; 
Ar[y] = temp; 
} 
} else { 
if (parseInt(Ar[y - 1][colNum]) <= parseInt(Ar[y][colNum])) { 
Ar[y - 1] = Ar[y]; 
Ar[y] = temp; 
} 
} 
} 
} 
for (x = 1; x < row; x++) { 
for (y = 0; y < column; y++) { 
table.rows(x).cells(y).innerHTML = Ar[x - 1][y]; 
} 
} 
count++; 
}
Javascript 相关文章推荐
jQuery 树形结构的选择器
Feb 15 Javascript
JQuery插件Style定制化方法的分析与比较
May 03 Javascript
JS交换变量的方法
Jan 21 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
Jun 06 Javascript
JS获取月份最后天数、最大天数与某日周数的方法
Dec 08 Javascript
Jquery ajax请求导出Excel表格的实现代码
Jun 08 Javascript
bootstrap fileinput 插件使用项目总结(经验)
Feb 22 Javascript
浅谈react.js 之 批量添加与删除功能
Apr 17 Javascript
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
May 19 jQuery
JavaScript模块详解
Dec 18 Javascript
详解vue移动端日期选择组件
Feb 22 Javascript
解决vue 表格table列求和的问题
Nov 06 Javascript
最常用的12种设计模式小结
Aug 09 #Javascript
silverlight线程与基于事件驱动javascript引擎(实现轨迹回放功能)
Aug 09 #Javascript
javascript 主动派发事件总结
Aug 09 #Javascript
JsDom 编程小结
Aug 09 #Javascript
IE 当eval遇上function的处理
Aug 09 #Javascript
取得窗口大小 兼容所有浏览器的js代码
Aug 09 #Javascript
Javascript实现的类似Google的Div拖动效果代码
Aug 09 #Javascript
You might like
php利用header函数实现文件下载时直接提示保存
2009/11/12 PHP
php连接mssql数据库的几种方法
2013/02/21 PHP
PHP闭包(Closure)使用详解
2013/05/02 PHP
PHP多维数组转一维数组的简单实现方法
2015/12/23 PHP
深入理解JavaScript系列(14) 作用域链介绍(Scope Chain)
2012/04/12 Javascript
jquery验证表单中的单选与多选实例
2013/08/18 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
Node.js中使用jQuery的做法
2016/08/17 Javascript
leaflet的开发入门教程
2016/11/17 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
element el-input directive数字进行控制
2018/10/11 Javascript
vue通过style或者class改变样式的实例代码
2018/10/30 Javascript
使用webpack搭建vue项目实现脚手架功能
2019/03/15 Javascript
JS实现图片懒加载(lazyload)过程详解
2020/04/02 Javascript
Node.js API详解之 module模块用法实例分析
2020/05/13 Javascript
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
[07:26]2015国际邀请赛第二日TOP10集锦
2015/08/06 DOTA
Python操作MySQL简单实现方法
2015/01/26 Python
深入理解Javascript中的this关键字
2015/03/27 Python
完美解决安装完tensorflow后pip无法使用的问题
2018/06/11 Python
pandas DataFrame 删除重复的行的实现方法
2019/01/29 Python
利用Python绘制Jazz网络图的例子
2019/11/21 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
美国亚马逊旗下男装网站:East Dane(支持中文)
2019/09/25 全球购物
廉政教育心得体会
2014/01/01 职场文书
国际贸易专业自荐信
2014/06/10 职场文书
红领巾心向党演讲稿
2014/09/10 职场文书
升职自荐信范文
2015/03/27 职场文书
大学推普周活动总结
2015/05/07 职场文书
2015年党务公开工作总结
2015/05/19 职场文书
解除处分决定书
2015/06/25 职场文书
2015年暑期社会实践总结
2015/07/13 职场文书
Python初学者必备的文件读写指南
2021/06/23 Python
python代码实现备忘录案例讲解
2021/07/26 Python
MySQL数据库完全卸载的方法
2022/03/03 MySQL