Js implementation dynamic add delete Table row example
- 2020-03-30 02:38:58
- OfStack
Recently, I encountered an operation to dynamically add and delete table rows in my project
The HTML code
Javascript code:
Implementation effect:
< img SRC = "border = 0 / / files.jb51.net/file_images/article/201404/201404141507072.gif? 201431415741 ">
The HTML code
<table cellpadding="0" cellspacing="0" border="1" style="margin:auto; width:96%;" id="LearnInfoItem">
<tr >
<td colspan="8" bgcolor="#96E0E2" style="height:30px;" ><h3 style="text-align:center; margin:0;"> Main learning resume </h3></td>
</tr>
<tr id="tr1">
<td class="tdStyle2"> All the time </td>
<td class="tdStyle2"> Graduate School </td>
<td class="tdStyle2"> What learn professional </td>
<td class="tdStyle2"> Eductional systme </td>
<td class="tdStyle2"> A degree in </td>
<td class="tdStyle2"> Learning style </td>
<td class="tdStyle2"> Level of education </td>
<td class="tdStyle2">
<input type="button" name="LearnAdd" value=" add " onclick="LearnAddSignRow()" />
<input name='LearnTRLastIndex' type='hidden' id='LearnTRLastIndex' value="1" />
</td>
</tr>
</table>
Javascript code:
<script language="javascript" type="text/javascript">// Example: obj = findObj("image1");
function findObj(theObj, theDoc)
{
var p, i, foundObj;
if(!theDoc) theDoc = document;
if( (p = theObj.indexOf("?")) > 0 && parent.frames.length)
{
theDoc = parent.frames[theObj.substring(p+1)].document;
theObj = theObj.substring(0,p);
}
if(!(foundObj = theDoc[theObj]) && theDoc.all)
foundObj = theDoc.all[theObj];
for (i=0; !foundObj && i < theDoc.forms.length; i++)
foundObj = theDoc.forms[i][theObj];
for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++)
foundObj = findObj(theObj,theDoc.layers[i].document);
if(!foundObj && document.getElementById)
foundObj = document.getElementById(theObj);
return foundObj;
}
//Add a learning resume
function LearnAddSignRow(){ //Read the line number of the last line and store it in the LearnTRLastIndex text box
var LearnTRLastIndex = findObj("LearnTRLastIndex",document);
var rowID = parseInt(LearnTRLastIndex.value);
var signFrame = findObj("LearnInfoItem",document);
//Add the line
var newTR = signFrame.insertRow(signFrame.rows.length);
newTR.id = "LearnItem" + rowID;
//Add column: starting and ending time
var newNameTD=newTR.insertCell(0);
//Add column content
newNameTD.innerHTML = "<input name='txtLearnStartDate" + rowID + "' id='txtLearnStartDate" + rowID + "' type='text' class='inputStyle' />";
//Add column: school of graduation
var newNameTD=newTR.insertCell(1);
//Add column content
newNameTD.innerHTML = "<input name='txtName" + rowID + "' id='txtName" + rowID + "' type='text' class='inputStyle' />";
//Add column: major
var newEmailTD=newTR.insertCell(2);
//Add column content
newEmailTD.innerHTML = "<input name='txtEMail" + rowID + "' id='txtEmail" + rowID + "' type='text' class='inputStyle' />";
//Add column: length of schooling
var newTelTD=newTR.insertCell(3);
//Add column content
newTelTD.innerHTML = "<input name='txtTel" + rowID + "' id='txtTel" + rowID + "' type='text' class='inputStyle' />";
//Add column: degree
var newMobileTD=newTR.insertCell(4);
//Add column content
newMobileTD.innerHTML = "<input name='txtMobile" + rowID + "' id='txtMobile" + rowID + "' type='text' class='inputStyle' />";
//Add columns: learn how
var newMobileTD=newTR.insertCell(5);
//Add column content
newMobileTD.innerHTML = "<input name='txtMobile" + rowID + "' id='txtMobile" + rowID + "' type='text' class='inputStyle' />";
//Add column: education level
var newCompanyTD=newTR.insertCell(6);
//Add column content
newCompanyTD.innerHTML = "<input name='txtCompany" + rowID + "' id='txtCompany" + rowID + "' type='text' class='inputStyle' />";
//Add column: delete button
var newDeleteTD=newTR.insertCell(7);
//Add column content
newDeleteTD.innerHTML = "<div align='center'><input id='txtDel" + rowID + "' type='button' value=' delete ' onclick="LearnDeleteRow('LearnItem" + rowID + "')" class='inputStyle' /></div>";
//Push the line number to the next line
LearnTRLastIndex.value = (rowID + 1).toString() ;
}
//Deletes the specified row
function LearnDeleteRow(rowid){
var signFrame = findObj("LearnInfoItem",document);
var signItem = findObj(rowid,document);
//Gets the Index of the row to be deleted
var rowIndex = signItem.rowIndex;
//Deletes the row specifying Index
signFrame.deleteRow(rowIndex);
}
}
</script>
Implementation effect:
< img SRC = "border = 0 / / files.jb51.net/file_images/article/201404/201404141507072.gif? 201431415741 ">