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 相关文章推荐
JavaScript延迟加载
Mar 09 Javascript
基于jquery的一个OutlookBar类,动态创建导航条
Nov 19 Javascript
jQuery为iframe的body添加click事件的实现代码
Apr 07 Javascript
javascript实现给定半径求出圆的面积
Jun 26 Javascript
Angularjs 动态添加指令并绑定事件的方法
Apr 13 Javascript
bootstrap select插件封装成Vue2.0组件
Apr 17 Javascript
webpack配置的最佳实践分享
Apr 21 Javascript
Angular2下使用pdf插件的方法详解
Apr 29 Javascript
Vue通过input筛选数据
Oct 26 Javascript
js简单遍历获取对象中的属性值的方法示例
Jun 19 Javascript
Layui数据表格跳转到指定页的实现方法
Sep 05 Javascript
微信小程序可滑动周日历组件使用详解
Oct 21 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 函数执行效率的小比较
2010/10/17 PHP
php通过COM类调用组件的实现代码
2012/01/11 PHP
PHP文件缓存内容保存格式实例分析
2014/08/20 PHP
Joomla使用Apache重写模式的方法
2016/05/04 PHP
php 数组随机取值的简单实例
2016/05/23 PHP
JavaScript OOP类与继承
2009/11/15 Javascript
js null undefined 空区别说明
2010/06/13 Javascript
jQuery实现购物车表单自动结算效果实例
2015/08/10 Javascript
JavaScript获取function所有参数名的方法
2015/10/30 Javascript
Javascript HTML5 Canvas实现的一个画板
2020/04/12 Javascript
深入理解(function(){... })();
2016/08/16 Javascript
全选复选框JavaScript编写小结(附代码)
2017/08/16 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
angular2中Http请求原理与用法详解
2018/01/11 Javascript
vue中实现methods一个方法调用另外一个方法
2018/02/08 Javascript
vue中Axios的封装与API接口的管理详解
2018/08/09 Javascript
JS判断两个数组或对象是否相同的方法示例
2019/02/28 Javascript
微信小程序实现折线图的示例代码
2019/06/07 Javascript
js中console在一行内打印字符串和对象的方法
2019/09/10 Javascript
Vue父子之间值传递的实例教程
2020/07/02 Javascript
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
利用python发送和接收邮件
2016/09/27 Python
Python爬虫DNS解析缓存方法实例分析
2017/06/02 Python
python+pyqt实现12306图片验证效果
2017/10/25 Python
python使用sessions模拟登录淘宝的方式
2019/08/16 Python
Python + Flask 实现简单的验证码系统
2019/10/01 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
CSS3中的常用选择器使用示例整理
2016/06/13 HTML / CSS
Ray-Ban雷朋太阳眼镜英国官网:Ray-Ban UK
2019/11/23 全球购物
大学生个人实习的自我评价
2014/02/15 职场文书
财务会计大学生自我评价
2014/04/09 职场文书
公司任命书模板
2014/06/06 职场文书
企业公益活动策划方案
2014/08/24 职场文书
小学体育组工作总结2015
2015/07/21 职场文书
python数据库批量插入数据的实现(executemany的使用)
2021/04/30 Python
Mysql多层子查询示例代码(收藏夹案例)
2022/03/31 MySQL