JavaScript can sort data based on any field of information. In this example, a checkbook register can be sorted by date, check number, check amount, or paid to person.
Add the below code to the <body> section of your page:
<scriptlanguage="javascript"type="text/javascript"> /* Visit http://www.yaldex.com/
for full source code
and get more free JavaScript, CSS and DHTML scripts! */
<!-- Begin function
dates(datea,dateb){ var
yeara =1*
datea.substring(6,8); var
yearb =1*
dateb.substring(6,8); if(yeara
>
yearb)returntrue; if(yeara
<
yearb)returnfalse;
var
montha =1*
datea.substring(0,2); var
monthb =1*
dateb.substring(0,2); if(montha
>
monthb)returntrue; if(montha
<
monthb)returnfalse;
var
daya =1*
datea.substring(3,5); var
dayb =1*
dateb.substring(3,5); if(daya
>
dayb)returntrue; returnfalse;
}
function
exchange(i,form){ /* This function swaps the
information in the various cells */ document.forms[6].check.value=document.forms[i].check.value; document.forms[i].check.value=document.forms[i+1].check.value; document.forms[i+1].check.value=document.forms[6].check.value; document.forms[6].units.value=document.forms[i].units.value; document.forms[i].units.value=document.forms[i+1].units.value; document.forms[i+1].units.value=document.forms[6].units.value; document.forms[6].amount.value=document.forms[i].amount.value; document.forms[i].amount.value=document.forms[i+1].amount.value; document.forms[i+1].amount.value=document.forms[6].amount.value; document.forms[6].presented.value=document.forms[i].presented.value; document.forms[i].presented.value=document.forms[i+1].presented.value; document.forms[i+1].presented.value=document.forms[6].presented.value;
}
function
amountSort(form){ /* orders the table by amount */ for(var
j =0;
j<5;
j++){ for(var
i=0;
i<5;
i++){ var
l =1*
i +1; if(1*document.forms[i].amount.value>1*document.forms[i+1].amount.value){ exchange(i,form); } } }
}
function
checkSort(form){ /* orders the table by check
number */ for(var
j =0;
j<5;
j++){ for(var
i=0;
i<5;
i++){ var
l =1*
i +1; if(1*document.forms[i].check.value>1*document.forms[i+1].check.value){ exchange(i,form); } } }
}
function
dateSort(form){ /* orders the table by date */ for(var
j =0;
j<5;
j++){ for(var
i=0;
i<5;
i++){ var
l =1*
i +1; if(dates(document.forms[i].units.value,document.forms[i+1].units.value)){ exchange(i,form); } } }
}
function
presentSort(form){ /* orders the table by presenter
*/ for(var
j =0;
j<5;
j++){ for(var
i=0;
i<5;
i++){ var
l =1*
i +1; if(document.forms[i].presented.value>document.forms[i+1].presented.value){ exchange(i,form); } } }
}