我記得老早老早大家就開(kāi)始在經(jīng)典討論表格排序的問(wèn)題了,過(guò)了這么多年,這個(gè)問(wèn)題的解決方案層出不窮,見(jiàn)仁見(jiàn)智。
用script,htc,xml+xsl等等怎么著(zhù)都能實(shí)現,只是效率不同罷了。
今天正好學(xué)習.net的時(shí)候學(xué)到這一塊,順道把以前和大家討論過(guò)的知識整理回顧并總結一下。
1, CSS+HTC(HTML Component)
微軟的這個(gè)方法簡(jiǎn)單,在經(jīng)典里面也火了一陣,下載Dave Massy做好了的組件,只需要在表格的style里面加入behavior:url(xxx.htc);就可以了.
不過(guò)這個(gè)方法有個(gè)缺點(diǎn)就是需要服務(wù)器端運行,在硬盤(pán)里直接運行是不管用的。而且需要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實(shí)現的表格排序。btchina的表格排序的script源文件使用的是Erik Arvidsson(WebFX)做的一款程序叫做Sortable Table。官方有強大的技術(shù)支持。清訪(fǎng)問(wèn)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,領(lǐng)軍人物windy_sk(wind2000)的script代碼.
老牌的,絕對是經(jīng)典高手,在經(jīng)典里掀起波瀾無(wú)數.最早學(xué)習的就是他的代碼.原貼:
http://www.blueidea.com/bbs/NewsDetail.asp?id=697036
4,還有一些職業(yè)高手的代碼,以后繼續總結.
還有菜鳥(niǎo)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幫助!

