Menu
hi vwphillips,
i have a problem with the dynamic table rows. i want to get the values of each component (like select box, textbox and checkbox) from each row after the user adding the rows to the table dynamically. for example if the user added three rows i want to get the values of particular selected option and corresponding text field value of 3 rows.can u tell me how to write a function for this?
<input id="text"size="15" onblur="Duplicate(this);"/>
<input type="checkbox" " />
</td>
</tr>
</tbody>
</table>
<input type="button" name="" value="Assign E164" onclick="Add('tst');"/>
<input type="button" name="" value="Clear E164" onclick="Remove('tst','bb[]');"/>
[CODE]<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<script language="JavaScript" type="text/javascript">
/*<![CDATA[*/
function Add(id,nu){
var table=document.getElementById(id);
var tbody=table.getElementsByTagName('TBODY')[0];
var newrow=tbody.appendChild(tbody.getElementsByTagName('TR')[0].cloneNode
(true));
newrow.getElementsByTagName('SELECT')[0].selectedIndex=0;
newrow.getElementsByTagName('INPUT')[0].value='';
newrow.getElementsByTagName('INPUT')[1].checked=false;
CreateString();
}
function Remove(id,nme){
var table=document.getElementById(id);
var rows=table.rows;
for (var remove=[],zxc0=0;zxc0<rows.length;zxc0++){
var cb=rows[zxc0].getElementsByTagName('INPUT')[1];
if (cb&&cb.name==nme&&cb.checked){
remove.push(rows[zxc0]);
}
}
if (remove.length==rows.length) return alert('Leave One');
for (var zxc1=0;zxc1<remove.length;zxc1++){
remove[zxc1].parentNode.removeChild(remove[zxc1]);
}
CreateString();
}
function Duplicate(obj,tb,index){
var objs=document.getElementsByName(obj.name);
for (var zxc0=0;zxc0<objs.length;zxc0++){
if (objs[zxc0]!=obj){
if (obj.tagName=='INPUT'&&objs[zxc0].value!=''&&objs[zxc0].value==obj.value){
alert('No Duplicate Values');
obj.value='';
break;
}
else if (obj.tagName=='SELECT'&&objs[zxc0].selectedIndex!=0&&objs[zxc0].selectedIndex==obj.selectedIndex){
alert('No Duplicate Selects');
obj.selectedIndex=0;
break;
}
}
}
index=index||0;
var tbs=document.getElementsByName(tb);
for (var zxc1=0;zxc1<objs.length;zxc1++){
if (objs[zxc1]==obj&&tbs[zxc1]){
if (tbs[zxc1].getAttribute('disabled')) tbs[zxc1].removeAttribute('disabled');
if (obj.selectedIndex==index){
tbs[zxc1].setAttribute('disabled','disabled');
}
}
}
CreateString();
}
var string='';
function CreateString(){
var sels=document.getElementsByName('sel[]');
var tbs=document.getElementsByName('txt[]');
var cbs=document.getElementsByName('bb[]');
string='';
for (var zxc0=0;zxc0<sels.length;zxc0++){
string+=sels[zxc0].selectedIndex+'(zxc)'+tbs[zxc0].value+'(cxz)';
}
document.Show.Show0.value=string;
}
/*]]>*/
</script>
</head>
<body>
<table>
<tbody>
<tr>
<td>
<table id="tst" border="1" width="230">
<tbody>
<tr>
<td>
<select name="sel[]" id="option" size="1" onchange="Duplicate(this,'txt[]',2);">
<option>Select</option>
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="0">3</option>
<option value="0">4</option>
<option value="0">5</option>
<option value="0">6</option>
<option value="0">7</option>
<option value="0">8</option>
<option value="0">9</option>
</select>
<input name="txt[]" id="text"size="15" onblur="Duplicate(this);"/>
<input type="checkbox" name="bb[]" id="check" />
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td>
<input type="button" name="" value="Add" onclick="Add('tst');"/>
<input type="button" name="" value="Remove" onclick="Remove('tst','bb[]');"/>
<input type="button" name="" value="Create String" onclick="CreateString();"/>
</td>
</tr>
</tbody>
</table>
<br> <br>
</center>
<script> vic=0; </script>
<form name=Show id=Show style="position:absolute;visibility:visible;top:420px;left:0px;" >
<input size=100 name=Show0 >
<input size=10 name=Show1 >
<input size=10 name=Show2 >
<input size=10 name=Show3 >
<input size=10 name=Show4 >
<input size=10 name=Show5 >
<input size=10 name=Show6 >
<input size=10 name=Show7 >
<input size=10 name=Show8 >
<input size=10 name=Show9 ><br>
<textarea name=TA rows=1 cols=100 ></textarea>
</form>
</body>
</html>[/CODE]
0.1.9 — BETA 5.18