<html>
<head>
<title>Insert title here</title>
<script>
var y=1,k=1,l=1,val=0,cnt=0,r=0,m=0;
var arr=new Array();
function addRow(tableID)
{
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
val=val+1;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
//alert(colCount);
for(var i=0; i<colCount; i++)
{
var newcell= row.insertCell(i);
if(i==colCount-1)
{
if(!addRow.counter)
{
addRow.counter = 0;
}
addRow.counter++;
newcell.innerHTML = "<input align=middle type=button width='100' name='btnRmv_"+addRow.counter+"' id='btnRmv_"+addRow.counter+"' value='Remove' onclick='removeRow(this,"+tableID+","+colCount+","+k+");' onChange='removeRow(this,"+tableID+","+val+","+k+");' />";
k++;
}
else
{
if(i==0 )
{
if(!addRow.counter)
{
addRow.counter = 0;
}
addRow.counter++;
newcell.innerHTML = "<label id='srno_"+addRow.counter+"' style='position:relative' width ='50' > "+rowCount+" </label>";
rowCount=rowCount+1;;
}
if(i==1)
{
if(!addRow.counter)
addRow.counter = 0;
addRow.counter++; //1
newcell.innerHTML = "<input name='txtGr_"+addRow.counter+"'id='txtGr_"+addRow.counter+"' type='text' size='10' maxlength='15' align='middle' />";
}
if(i==3)
{
if(!addRow.counter)
addRow.counter = 0;
addRow.counter++; //2
newcell.innerHTML ="<select txtGr_"+addRow.counter+"'id='txtGr_"+addRow.counter+"' onchange=''type='select-one'>" +
"<option value=''>Select--</option>" +
"<option value='ssc'>SSC</option>" +
"<option value='hsc'>HSC</option>" +
"<option value='graduate'>Graduate</option>" +
"<option value='pg'>Post Graduate</option>" +
"<option value='others'>Others...</option></select>";
}
if(i==2){
if(!addRow.counter)
addRow.counter = 0;
addRow.counter++; //3
newcell.innerHTML = "<input align=middle name='txtGr_"+addRow.counter+"' id='txtGr_"+addRow.counter+"' type='text' size='10' maxlength='15' />";
}
switch(newcell.childNodes[0].type) {
case "text":
var j=i+1;
newcell.childNodes[0].value = "";
var cnt=rowCount+1;
var str=newcell.childNodes[0].name;
var len=str.length;
var strname=str.substring(0,len);
newcell.childNodes[0].name=strname;
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
cnt=rowCount+1;
str=newcell.childNodes[0].name;
len=str.length;
strname=str.substring(0,len);
newcell.childNodes[0].name=strname;
break;
}
}
}
}// End Add Row Function
function removeRow(src,tableID,rowC,u)
{
val--;
u=u-1;
var flag=0;
var oRow = src.parentElement.parentElement;
var row = tableID.deleteRow(oRow.rowIndex);
if (cnt>=1)
{
arr[m++]=(u*rowC)+1;
for( var j=0;j<(val+arr.length);j++)
{
for(var t=0;t<arr.length;t++)
{
if(arr[t]==y)
{
y=y+rowC;
flag=1;
}
}
if(flag==0)
{
if(document.getElementById("srno_"+y)==null)
{
y=y+rowC;
}
else
{
document.getElementById("srno_"+y).innerText=l++;
y=y+rowC;
}
}
else
{
flag=0;
}
}
}
if(cnt==0)
{
for( var j=0;j<(val);j++)
{
if(j==u)
{
arr[m++]=y;
y=y+rowC;
}
document.getElementById("srno_"+y).innerText=l++;
y=y+rowC;
}
}
l=1;
y=1;
cnt++;
return true;
}
</script>
</head>
<body>
<form name="form1" method="post" action="">
<table id="dynamic_gen" border="1" align="center" >
<tr >
<th width="50" > Sr. No.</th>
<th width="73"> Name </th>
<th width="73"> SurName </th>
<th width="93"> Qualification </th>
<th width="100"><input type="button" value="Add User" onclick="addRow('dynamic_gen')" /></th>
</tr>
</table>
</form>
</body>
</html>