* @param sDataType
* 이 필드의 데이터 유형은 int, float, date 기본적으로 문자열
으로 처리됩니다.*/
function sortTable(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 {
aTR. sort(generateCompareTRs(iCol, sDataType));
}
var oFragment = document.createDocumentFragment();
for ( var j = 0; j < aTRs.length; j ) {
oFragment .appendChild(aTRs[j]);
}
oTBody.appendChild(oFragment);
oTable.sortCol = iCol;
}
위 코드를 js 파일로 캡슐화하고 html 페이지에서 참조합니다.
테스트 test.html:
< ; html xmlns = "http://www.w3.org/1999/xhtml" >
< 제목 >/ 제목 >
< src = "js/sortTable.js" script >
< table border = "1" id = "tblSort" >
< = " 색상: 빨간색; bgcolor: 공백" >
번째 onclick = " sortTable('tblSort',2,'date');" style = "커서: 포인터" > 일>
tr >
thead >
;
td > gt;
3
td >
< ;/ tr > 🎜> < 2007년 td >
< 34 td >
td >
12 td > ;
< / tr >
tbody >
테이블 >
body >
html >