日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实现Table多类不同数据类型的排序(顺反)

發(fā)布時間:2023/12/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实现Table多类不同数据类型的排序(顺反) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

JS如下:

var TableUtil = new Object();


TableUtil.Convert = function(sValue,sDataType)
{
??? switch(sDataType)
??? {
??????? case "int":
??????????? return parseInt(sValue);
??????? case "float":
??????????? return parseFloat(sValue);
??????? case "date":
??????????? return new Date(Date.parse(sValue));
??????? default:
??????????? return sValue.toString();???????????
??? }
}

?

?

TableUtil.generateCompareCustomTRs? = function(iCol,sDataType)
{
??? return function compare(oTR1,oTR2)
??? {
??????? var vValue1,vValue2;
??????? if(oTR1.cells[iCol].getAttribute("value"))
??????? {
??????????? vValue1 = TableUtil.Convert(oTR1.cells[iCol].getAttribute("value"),sDataType);
??????????? vValue2 = TableUtil.Convert(oTR2.cells[iCol].getAttribute("value"),sDataType);??????????
??????? }
??????? else
??????? {
??????????? vValue1 = TableUtil.Convert(oTR1.cells[iCol].firstChild.nodeValue,sDataType);
??????????? vValue2 = TableUtil.Convert(oTR2.cells[iCol].firstChild.nodeValue,sDataType);
??????? }
???????
??????? if(vValue1 <vValue2)
??????? {
??????????? return -1;
??????? }
??????? else if(vValue1 > vValue2)
??????? {
??????????? return 1;
??????? }
??????? else
??????? {
??????????? return 0;
??????? }
??? }
}

TableUtil.sortCustomTypeTable = function(sTableId,iCol,sDataType)
{
??? var oTable = document.getElementById(sTableId);
??? var oTbody = oTable.tBodies[0];
??? var colDataRows = oTbody.rows;
??? var aTRs = new Array;
???
??? for(var i=0;i<colDataRows.length;i++)
??? {
??????? aTRs[i] = colDataRows[i];
??? }
???
??? if(oTable.sortCol == iCol)
??? {
??????? aTRs.reverse();
??? }
??? else
??? {
??????? aTRs.sort(TableUtil.generateCompareCustomTRs(iCol,sDataType));
??? }
??? var oFragment = document.createDocumentFragment();
??? for(var i = 0;i <aTRs.length;i++)
??? {
??????? oFragment.appendChild(aTRs[i]);
??? }
??? oTbody.appendChild(oFragment);
??? oTable.sortCol = iCol;???
}

?

?

?

HTML如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
??? <title></title>
???? <script src="JScript1.js" type="text/javascript"></script>
</head>
<body>
??? <table id="tblSort" border="1" sortCol="">
??????? <thead >
??????????? <tr>
??????????????? <th οnclick="TableUtil.sortCustomTypeTable('tblSort',0)" style="cursor:pointer">Type</th>
??????????????? <th οnclick="TableUtil.sortCustomTypeTable('tblSort',1)" style="cursor:pointer">Filename</th>
??????????? </tr>
??????? </thead>
???????
??????? <tbody>
??????????? <tr>
??????????????? <td value="doc"><img src="images/wordicon.gif" /></td>
??????????????? <td>My resume</td>??????????????
??????????? </tr>
??????????? <tr>
???????????????? <td value="xls"><img src="images/excelicon.gif"/></td>
??????????????? <td>Fall Budget.xls</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="pdf"><img src="images/acrobaticon.gif" /></td>
??????????????? <td>How to be a better programmer.pdf</td>??
??????????? </tr>
???????????? <tr>
???????????????? <td value="doc"><img src="images/wordicon.gif" /></td>
??????????????? <td>My Old Resume.doc</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="txt"><img src="images/notepadicon.gif" /></td>
??????????????? <td>Notes from Meeting.txt</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="zip"><img src="images/zippedfoldericon.gif" /></td>
??????????????? <td>Backups.zip</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="xls"><img src="images/excelicon.gif" /></td>
??????????????? <td>Spring budget.xls</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="doc"><img src="images/wordicon.gif" /></td>
??????????????? <td>Job Description - Web Designer.doc</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="pdf"><img src="images/acrobaticon.gif" /></td>
??????????????? <td>Saved Web Page.pdf</td>??
??????????? </tr>
??????????? <tr>
???????????????? <td value="doc"><img src="images/wordicon.gif" /></td>
??????????????? <td>Chapter 12.doc</td>??
??????????? </tr>
??????? </tbody>???????
??? </table>???
</body>
</html>

轉載于:https://www.cnblogs.com/vihone/archive/2010/11/26/1889076.html

總結

以上是生活随笔為你收集整理的实现Table多类不同数据类型的排序(顺反)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。