<HTML>
<HEAD>
<META HTTP-EQUIV='Pragma' CONTENT='no-cache'>
<META HTTP-EQUIV='Expires' CONTENT='0'>
<META http-equiv='Cache-Control' content='no-cache'>
<TITLE>EggHeadCafe.com Sortable Grid Control By Robbe D. Morris</TITLE>
<script language=JavaScript src=GridSort.js></script>
<script language=JavaScript src=GridDraw.js></script>
<script language=JavaScript>
/*
Possible Data Type Constants Defined in GridSort.js
var idxGrid_Text=0;
var idxGrid_CheckBox=1;
var idxGrid_Input=2;
var idxGrid_DropDown=3;
*/
/* Start of examples of custom functions that may make your code easier to read. */
var sGridStateList='';
sGridStateList += "<select id=gridstatelist name=gridstatelist onchange=GridSetVal >";
sGridStateList += "<option value='FL'>FL</option>";
sGridStateList += "<option value='NY'>NY</option>";
sGridStateList += "<option value='DC'>DC</option>";
sGridStateList += "<option value='CA'>CA</option>";
sGridStateList += "<option value='IA'>IA</option>";
sGridStateList += "<option value='AZ'>AZ</option>";
sGridStateList += "</select>";
function GridWriteCheckBox(nColumn,sID,sName)
{
return '<input id=' + sName + ' name=' + sName + ' type=checkbox value=1 onclick=GridSetVal(' + nColumn + ',"' + sID + '",this); >';
}
function GridWriteInputBox(nCol,sID,sName,sVal)
{
sVal = '<input id=' + sName + ' name=' + sName + ' type=text size=10 value="' + sVal + '";
sVal +=' onchange=GridSetVal(' + nCol + ',' + sID + ',this); >';
return sVal;
}
function GridWriteStates(nColumn,sID,sName)
{
var sH='';
sH = GridReplace(sGridStateList,"gridstatelist",sName);
sH = GridReplace(sH,"onchange=GridSetVal","onchange=GridSetVal('" + nColumn + "','" + sID + "',this);");
return sH;
}
/* End of examples of custom functions that may make your code easier to read. */
var GridTableWidth=550; // Max table width for the grid
var GridSortDirection='descending'; // Set to descending if you want the grid to be sorted ascending to start with.
var GridSortColumn=2; // Set the column that will be sorted on
var GridCell_1; // GridCell_1 - 8 are place holders for cell objects
var GridCell_2;
var GridCell_3;
var GridCell_4;
var GridCell_5;
var GridCell_6;
var GridCell_7;
var GridCell_8;
var GridArrays = new Array(); // Master grid array that contains an array of GridCell objects for each row.
var oGridCell;
var GridCurCol=0;
var GridCurID=0;
var GridCurRow=0;
// Define our columns
GridArrays[GridCurRow] = new Array ('Select','FName','LName','Address','City','State','Zip','Status');
/* Start Row 1 */
GridCurCol=0;
GridCurID='1001'; //Give unique id to all cells in this row
GridCurRow=1;
oGridCell = new Object; // Create new JavaScript Object
oGridCell.ID = GridCurID;
oGridCell.Column=GridCurCol; // Column in the grid
oGridCell.Name = 'chk' + oGridCell.ID; // Form element name (if applicable)
oGridCell.Type = idxGrid_CheckBox; //Use constant to define data type
oGridCell.SortVal = '1'; // Value used for sorting
// HTML displayed in grid
oGridCell.HTML = GridWriteCheckBox(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_1 = oGridCell;
oGridCell = new Object;
GridCurCol++;
oGridCell.ID = GridCurID;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Robbe';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_2 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Morris';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_3 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '1600 Pennslyvania Ave.';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_4 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Washington';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_5 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'grdState' + oGridCell.ID;
oGridCell.Type = idxGrid_DropDown;
oGridCell.SortVal = 'DC';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteStates(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_6 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '90210';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_7 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'txt' + oGridCell.ID;
oGridCell.Type = idxGrid_Input;
oGridCell.SortVal = 'hired';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteInputBox(oGridCell.Column,oGridCell.ID,oGridCell.Name,oGridCell.SortVal);
GridCell_8 = oGridCell;
GridArrays[GridCurRow] = new Array (GridCell_1,GridCell_2,GridCell_3,GridCell_4,GridCell_5,GridCell_6,GridCell_7,GridCell_8);
/* End Row 1 */
/* Start Row 2 */
GridCurCol=0;
GridCurID='1002';
GridCurRow=2;
oGridCell = new Object;
oGridCell.ID = GridCurID;
oGridCell.Column=GridCurCol;
oGridCell.Name = 'chk' + oGridCell.ID;
oGridCell.Type = idxGrid_CheckBox;
oGridCell.SortVal = '1';
oGridCell.HTML = GridWriteCheckBox(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_1 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Melisa';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_2 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Haire';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_3 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '1234 Sesame Street';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_4 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Orlando';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_5 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'grdState' + oGridCell.ID;
oGridCell.Type = idxGrid_DropDown;
oGridCell.SortVal = 'FL';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteStates(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_6 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '90211';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_7 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'txt' + oGridCell.ID;
oGridCell.Type = idxGrid_Input;
oGridCell.SortVal = 'pending';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteInputBox(oGridCell.Column,oGridCell.ID,oGridCell.Name,oGridCell.SortVal);
GridCell_8 = oGridCell;
GridArrays[GridCurRow] = new Array (GridCell_1,GridCell_2,GridCell_3,GridCell_4,GridCell_5,GridCell_6,GridCell_7,GridCell_8);
/* End Row 2 */
/* Start Row 3 */
GridCurCol=0;
GridCurID='1003';
GridCurRow=3;
oGridCell = new Object;
oGridCell.ID = GridCurID;
oGridCell.Column=GridCurCol;
oGridCell.Name = 'chk' + oGridCell.ID;
oGridCell.Type = idxGrid_CheckBox;
oGridCell.SortVal = '0';
oGridCell.HTML = GridWriteCheckBox(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_1 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'John';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_2 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Smith';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_3 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '24 Jump Street';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_4 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'San Diego';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_5 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'grdState' + oGridCell.ID;
oGridCell.Type = idxGrid_DropDown;
oGridCell.SortVal = 'CA';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteStates(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_6 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '90212';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_7 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'txt' + oGridCell.ID;
oGridCell.Type = idxGrid_Input;
oGridCell.SortVal = 'interview';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteInputBox(oGridCell.Column,oGridCell.ID,oGridCell.Name,oGridCell.SortVal);
GridCell_8 = oGridCell;
GridArrays[GridCurRow] = new Array (GridCell_1,GridCell_2,GridCell_3,GridCell_4,GridCell_5,GridCell_6,GridCell_7,GridCell_8);
/* End Row 3 */
/* Start Row 4 */
GridCurCol=0;
GridCurID='1004';
GridCurRow=4;
oGridCell = new Object;
oGridCell.ID = GridCurID;
oGridCell.Column=GridCurCol;
oGridCell.Name = 'chk' + oGridCell.ID;
oGridCell.Type = idxGrid_CheckBox;
oGridCell.SortVal = '0';
oGridCell.HTML = GridWriteCheckBox(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_1 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Jack';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_2 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'Welch';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_3 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '1 Wall Street';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_4 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = 'New York';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_5 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'grdState' + oGridCell.ID;
oGridCell.Type = idxGrid_DropDown;
oGridCell.SortVal = 'NY';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteStates(oGridCell.Column,oGridCell.ID,oGridCell.Name);
GridCell_6 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = '';
oGridCell.Type = idxGrid_Text;
oGridCell.SortVal = '90213';
oGridCell.HTML = oGridCell.SortVal;
oGridCell.Column=GridCurCol;
GridCell_7 = oGridCell;
oGridCell = new Object;
oGridCell.ID = GridCurID;
GridCurCol++;
oGridCell.Name = 'txt' + oGridCell.ID;
oGridCell.Type = idxGrid_Input;
oGridCell.SortVal = 'terminated';
oGridCell.Column=GridCurCol;
oGridCell.HTML = GridWriteInputBox(oGridCell.Column,oGridCell.ID,oGridCell.Name,oGridCell.SortVal);
GridCell_8 = oGridCell;
GridArrays[GridCurRow] = new Array (GridCell_1,GridCell_2,GridCell_3,GridCell_4,GridCell_5,GridCell_6,GridCell_7,GridCell_8);
/* End Row 4 */
</script>
<style>
.BodyHeader { font-family:verdana,arial,helvetica;sans-serif;color:#000000;
font-size:16px;font-weight:normal; border-color:#FFFFFF;
background-color: #FFFFFF;text-decoration:none; font-style:normal; }
.BodyHeader2 { font-family:verdana,arial,helvetica;sans-serif;color:#000000;
font-size:10px;font-weight:normal; border-color:#FFFFFF;
background-color: #FFFFFF;text-decoration:none; font-style:normal; }
.GridCell { font-family:verdana,arial,helvetica;sans-serif;color:#000000;
font-size:10px;font-weight:normal; border-color:#FFFFFF;
background-color: #FFFFFF;text-decoration:none; font-style:normal; }
.GridLink { font-family:verdana,arial,helvetica;sans-serif; color:#5D7BBA;
font-size:10px;font-weight:normal;text-decoration:underline;font-style:normal; }
.GridHeaderLink { font-family:verdana,arial,helvetica;sans-serif; color:#FFFFFF;
background-color: #5D7BBA;font-size:12px;font-weight:normal;
text-decoration:underline;font-style:normal; }
</style>
</HEAD>
<form name=frmSubmit id=frmSubmit method=post action=results.asp>
<BODY onload="GridDrawTable(GridArrays);" >
<table border="0" align="center">
<tr><td align="center" class=BodyHeader>EggHeadCafe.com Sortable Grid Demo</td></tr>
<tr><td align="center" class=BodyHeader2>By Robbe D. Morris</td></tr>
<tr><td align="center"> </td></tr>
<tr><td><div id=GridTable name=GridTable > </div> </td></tr>
<tr><td align="center"><Br></td></tr>
<tr><td align="center" class=BodyHeader2>(Click column heading to adjust sort order)</td></tr>
<tr><td align="center"><Br></td></tr>
<tr><td align="center" class=BodyHeader2><input type=Submit value='Submit'></td></tr>
</table>
<div id=GridHiddenElements name=GridHiddenElements ></div>
</form>
</BODY>
</HTML>
|