Free Programming

我的生活在一行又一行的代码中前行........

 

点击表头排序的几种方法

我记得老早老早大家就开始在经典讨论表格排序的问题了,过了这么多年,这个问题的解决方案层出不穷,见仁见智。
用script,htc,xml+xsl等等怎么着都能实现,只是效率不同罢了。
今天正好学习.net的时候学到这一块,顺道把以前和大家讨论过的知识整理回顾并总结一下。


1, CSS+HTC(HTML Component)
微软的这个方法简单,在经典里面也火了一阵,下载Dave Massy做好了的组件,只需要在表格的style里面加入behavior:url(xxx.htc);就可以了.
不过这个方法有个缺点就是需要服务器端运行,在硬盘里直接运行是不管用的。而且需要IE5以后的浏览器,不支持FF等其他的。
演示:http://msdn.microsoft.com/library/en-us/dndude/html/Qual.asp
官方地址:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndude/html/dude07232001.asp

2,script法
这算是目前用得比较多的一种方法了。像http://bt1.btchina.net就用的script实现的表格排序。btchina的表格排序的script源文件使用的是Erik Arvidsson(WebFX)做的一款程序叫做Sortable Table。官方有强大的技术支持。清访问http://webfx.eae.net/dhtml/tablesort/tablesort.html这款程序相对效率比较高。
演示:http://webfx.eae.net/dhtml/sortabletable/demo.html
官方地址:http://webfx.eae.net/dhtml/tablesort/tablesort.html

3,领军人物windy_sk(wind2000)的script代码.
老牌的,绝对是经典高手,在经典里掀起波澜无数.最早学习的就是他的代码.原贴:
http://www.blueidea.com/bbs/NewsDetail.asp?id=697036

4,还有一些职业高手的代码,以后继续总结.
还有菜鸟sipo用.net做的代码....(勿笑勿笑)

核心代码是:
If viewstate("sortexp") Is Nothing Then
viewstate("sortexp") = e.SortExpression.ToString
ElseIf viewstate("sortexp") = e.SortExpression.ToString Then
viewstate("sortexp") += " desc"
Else
viewstate("sortexp") = e.SortExpression.ToString
End If

感谢miles帮助!asp.net的代码终于放上来了,演示:http://www.dc9.cn/c/webform1.aspx

谢谢...阿赖的一个js控件

posted on 2007-08-20 16:51  sharewind  阅读(1029)  评论(1编辑  收藏  举报

导航