求给Datagrid排序的js代码 (不刷新页面)
测试通过 立刻给分! 问题点数:100、回复次数:7Top
1 楼goody9807(http://goody9807.cnblogs.com)回复于 2004-08-04 10:20:43 得分 100
function sortTable(col, tableToSort)
{
//alert(event.ercElement.innerText);
var iCurCell = col + tableToSort.cols;
var totalRows = tableToSort.rows.length;
alert(iCurCell);
var bSort = 0;
var colArray = new Array();
var oldIndex = new Array();
var indexArray = new Array();
var bArray = new Array();
var newRow;
var newCell;
var i;
var c;
var j;
// ** POPULATE THE ARRAY colArray WITH CONTENTS OF THE COLUMN SELECTED
for (i=1; i < tableToSort.rows.length; i++)
{
colArray[i - 1] = tableToSort.rows(i).cells(iCurCell).innerText;//setDataType(tableToSort.cells(iCurCell).innerText);
//alert(colArray[i - 1]);
iCurCell = iCurCell + tableToSort.cols;
}
// ** COPY ARRAY FOR COMPARISON AFTER SORT
for (i=0; i < colArray.length; i++)
{
bArray[i] = colArray[i];
}
// ** SORT THE COLUMN ITEMS
//alert ( colArray );
colArray.sort();
//alert ( colArray );
for (i=0; i < colArray.length; i++)
{
tableToSort.rows(i+1).cells(col).innerText=colArray[i];
}
}Top
2 楼goody9807(http://goody9807.cnblogs.com)回复于 2004-08-04 10:21:28 得分 0
function setDataType(cValue)
{
// THIS FUNCTION CONVERTS DATES AND NUMBERS FOR PROPER ARRAY
// SORTING WHEN IN THE SORT FUNCTION
var isDate = new Date(cValue);
if (isDate == "NaN")
{
if (isNaN(cValue))
{
// THE VALUE IS A STRING, MAKE ALL CHARACTERS IN
// STRING UPPER CASE TO ASSURE PROPER A-Z SORT
cValue = cValue.toUpperCase();
return cValue;
}
else
{
// VALUE IS A NUMBER, TO PREVENT STRING SORTING OF A NUMBER
// ADD AN ADDITIONAL DIGIT THAT IS THE + TO THE LENGTH OF
// THE NUMBER WHEN IT IS A STRING
var myNum;
myNum = String.fromCharCode(48 + cValue.length) + cValue;
return myNum;
}
}
else
{
// VALUE TO SORT IS A DATE, REMOVE ALL OF THE PUNCTUATION AND
// AND RETURN THE STRING NUMBER
//BUG - STRING AND NOT NUMERICAL SORT .....
// ( 1 - 10 - 11 - 2 - 3 - 4 - 41 - 5 etc.)
var myDate = new String();
myDate = isDate.getFullYear() + " " ;
myDate = myDate + isDate.getMonth() + " ";
myDate = myDate + isDate.getDate(); + " ";
myDate = myDate + isDate.getHours(); + " ";
myDate = myDate + isDate.getMinutes(); + " ";
myDate = myDate + isDate.getSeconds();
//myDate = String.fromCharCode(48 + myDate.length) + myDate;
return myDate ;
}
}Top
3 楼SuperFC(●捡分e族●)回复于 2004-08-04 11:38:37 得分 0
加入收藏Top
4 楼bjbr(bjbr)回复于 2005-01-06 14:52:03 得分 0
upTop
5 楼ld_thinking(懒得想)回复于 2005-01-22 14:53:44 得分 0
好东西收藏之Top
6 楼warren1999(warren1999)回复于 2005-01-28 15:40:42 得分 0
upTop
7 楼clkun(我来是学习)回复于 2005-05-27 22:40:39 得分 0
To: goody9807
在页面中如何调用?Top




