Mega Code Archive

 
Categories / JavaScript DHTML / HTML
 

InsertingRemoving Row Elements

/* JavaScript Bible, Fourth Edition by Danny Goodman  John Wiley & Sons CopyRight 2001 */ <HTML> <HEAD> <TITLE>Modifying Table Cell Content</TITLE> <STYLE TYPE="text/css"> THEAD {background-color:lightyellow; font-weight:bold} TFOOT {background-color:lightgreen; font-weight:bold} #myTABLE {background-color:bisque} </STYLE> <SCRIPT LANGUAGE="JavaScript"> var theTable, theTableBody function init() {     theTable = (document.all) ? document.all.myTABLE :          document.getElementById("myTABLE")     theTableBody = theTable.tBodies[0] } function appendRow(form) {     insertTableRow(form, -1) } function addRow(form) {     insertTableRow(form, form.insertIndex.value) } function insertTableRow(form, where) {     var now = new Date()     var nowData = [now.getHours(), now.getMinutes(), now.getSeconds(),          now.getMilliseconds()]     clearBGColors()     var newCell     var newRow = theTableBody.insertRow(where)     for (var i = 0; i < nowData.length; i++) {         newCell = newRow.insertCell(i)         newCell.innerHTML = nowData[i]         newCell.style.backgroundColor = "salmon"     }     updateRowCounters(form) } function removeRow(form) {     theTableBody.deleteRow(form.deleteIndex.value)     updateRowCounters(form) } function insertTHEAD(form) {     var THEADData = ["Hours","Minutes","Seconds","Milliseconds"]     var newCell     var newTHEAD = theTable.createTHead()     newTHEAD.id = "myTHEAD"     var newRow = newTHEAD.insertRow(-1)     for (var i = 0; i < THEADData.length; i++) {         newCell = newRow.insertCell(i)         newCell.innerHTML = THEADData[i]     }     updateRowCounters(form)     form.addTHEAD.disabled = true     form.deleteTHEAD.disabled = false } function removeTHEAD(form) {     theTable.deleteTHead()         updateRowCounters(form)     form.addTHEAD.disabled = false     form.deleteTHEAD.disabled = true } function insertTFOOT(form) {     var TFOOTData = ["Hours","Minutes","Seconds","Milliseconds"]     var newCell     var newTFOOT = theTable.createTFoot()     newTFOOT.id = "myTFOOT"     var newRow = newTFOOT.insertRow(-1)     for (var i = 0; i < TFOOTData.length; i++) {         newCell = newRow.insertCell(i)         newCell.innerHTML = TFOOTData[i]     }     updateRowCounters(form)     form.addTFOOT.disabled = true     form.deleteTFOOT.disabled = false } function removeTFOOT(form) {     theTable.deleteTFoot()         updateRowCounters(form)     form.addTFOOT.disabled = false     form.deleteTFOOT.disabled = true } function insertCaption(form) {     var captionData = form.captionText.value     var newCaption = theTable.createCaption()     newCaption.innerHTML = captionData     form.addCaption.disabled = true     form.deleteCaption.disabled = false } function removeCaption(form) {     theTable.deleteCaption()         form.addCaption.disabled = false     form.deleteCaption.disabled = true } // housekeeping functions function updateRowCounters(form) {     var sel1 = form.insertIndex     var sel2 = form.deleteIndex     sel1.options.length = 0     sel2.options.length = 0     for (var i = 0; i < theTableBody.rows.length; i++) {         sel1.options[i] = new Option(i, i)         sel2.options[i] = new Option(i, i)     }     form.removeRowBtn.disabled = (i==0) } function clearBGColors() {     for (var i = 0; i < theTableBody.rows.length; i++) {         for (var j = 0; j < theTableBody.rows[i].cells.length; j++) {             theTableBody.rows[i].cells[j].style.backgroundColor = ""                 }     } } </SCRIPT> </HEAD> <BODY onLoad="init()"> <H1>Modifying Tables</H1> <HR> <FORM NAME="controls"> <FIELDSET> <LEGEND>Add/Remove Rows</LEGEND> <TABLE WIDTH="100%" CELLSPACING=20><TR> <TD><INPUT TYPE="button" VALUE="Append 1 Row"      onClick="appendRow(this.form)"></TD> <TD><INPUT TYPE="button" VALUE="Insert 1 Row" onClick="addRow(this.form)"> at index:      <SELECT NAME="insertIndex">         <OPTION VALUE="0">0     </SELECT></TD> <TD><INPUT TYPE="button" NAME="removeRowBtn" VALUE="Delete 1 Row" DISABLED      onClick="removeRow(this.form)"> at index:      <SELECT NAME="deleteIndex">         <OPTION VALUE="0">0     </SELECT></TD> </TR> </TABLE> </FIELDSET> <FIELDSET> <LEGEND>Add/Remove THEAD and TFOOT</LEGEND> <TABLE WIDTH="100%" CELLSPACING=20><TR> <TD><INPUT TYPE="button" NAME="addTHEAD" VALUE="Insert THEAD"      onClick="insertTHEAD(this.form)"><BR>     <INPUT TYPE="button" NAME="deleteTHEAD" VALUE="Remove THEAD" DISABLED          onClick="removeTHEAD(this.form)"> </TD> <TD><INPUT TYPE="button" NAME="addTFOOT" VALUE="Insert TFOOT"      onClick="insertTFOOT(this.form)"><BR>     <INPUT TYPE="button" NAME="deleteTFOOT" VALUE="Remove TFOOT" DISABLED          onClick="removeTFOOT(this.form)"> </TD> </TR> </TABLE> </FIELDSET> <FIELDSET> <LEGEND>Add/Remove Caption</LEGEND> <TABLE WIDTH="100%" CELLSPACING=20><TR> <TD><INPUT TYPE="button" NAME="addCaption" VALUE="Add Caption"      onClick="insertCaption(this.form)"></TD> <TD>Text: <INPUT TYPE="text" NAME="captionText" SIZE=40 VALUE="Sample Caption"> <TD><INPUT TYPE="button" NAME="deleteCaption" VALUE="Delete Caption" DISABLED      onClick="removeCaption(this.form)"></TD> </TR> </TABLE> </FIELDSET> </FORM> <HR> <TABLE ID="myTABLE" CELLPADDING=10 BORDER=1> <TBODY> </TABLE> </BODY> </HTML>