Hello,
I have a quick question that I cannot for the life of me figure out.
The following is my java code to extend a form:
The script essentially acts on this sample of html:Code:<script type="text/javascript"> var counter = 0; function add_event() { counter++; var newFields = document.getElementById('add_event').cloneNode(true); newFields.id = ''; newFields.style.display = 'block'; var newField = newFields.childNodes; for (var i=0;i<newField.length;i++) { var theName = newField[i].name if (theName) newField[i].name = theName + counter; } var insertHere = document.getElementById('add_event'); insertHere.parentNode.insertBefore(newFields,insertHere); } </script>
Everything works fine except for the counter/adding on to theName ( newField[i].name = theName + counter).Code:<li> <label for="title">Title: </label><input type="text" name="title" value="" /> </li> <li> <label for="time">Time: </label><input type="text" name="time" value="" /> </li>
I know exactly what the problem is... I just don't know how to fix it. If I remove the li tags, the counter will work fine and increment each "name". As soon as I put the li (see code above) tags back (or any html tag - I have tested others as well) - it breaks again and won't increment the name - it just submits the names without numbers and alas I have no usable post data.
Does anyone have any clue how to keep the html formatting there and still get the counter to increment the name?




Reply With Quote