I'm trying to allow the user to add more fields to a form before submitting. I've got the code to clone a set of fields but the code I'm using to change the names of the fields in the clone are not working in either in IE or FF. The fields show but they have the same names still. When I test I find that name for the chlidNode is undefined.
<script language="javascript" type="text/javascript">
var counter=0;
function moreFields(){
if (!document.getElementById && !document.insertBefore) {
return;
}
counter++;
var newFields= document.getElementById('readroot').cloneNode(true);
newFields.id='clone'+counter;
newFields.style.display='block';
var newField=newFields.childNodes;
alert (newField.length);
for (var i=0;i<newField.length;i++){
var theName=newField.name;
if (theName){
newField.name=theName.substring(0,theName.length-1)+counter;
}
}
var insertHere=document.getElementById('writeroot');
insertHere.parentNode.insertBefore(newFields,insertHere);
}
</script>
Bret Lanius
<script language="javascript" type="text/javascript">
var counter=0;
function moreFields(){
if (!document.getElementById && !document.insertBefore) {
return;
}
counter++;
var newFields= document.getElementById('readroot').cloneNode(true);
newFields.id='clone'+counter;
newFields.style.display='block';
var newField=newFields.childNodes;
alert (newField.length);
for (var i=0;i<newField.length;i++){
var theName=newField.name;
if (theName){
newField.name=theName.substring(0,theName.length-1)+counter;
}
}
var insertHere=document.getElementById('writeroot');
insertHere.parentNode.insertBefore(newFields,insertHere);
}
</script>
Bret Lanius