Buscando sugerencias sobre cómo borrar los cuadros de texto cuando se borra un formulario HTML. Aquí está el código JS que se ejecuta al hacer clic:
var counter = 0; function moreField() { counter++; var newFields = document.getElementById('readroot').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('writeroot'); insertHere.parentNode.insertBefore(newFields, insertHere); } Intenté hacer un getelementbyId e intenté asignar al cuadro de texto recién creado un valor de "", pero eso no pareció funcionar. Aquí está el código HTML que crea el formulario que se clona:
<div class="InfoPanel"> <div id="readroot" style="display: block"> <br /> <asp:TextBox ID="txtHeadline" Columns="70" MaxLength="200" runat="server" /> <textarea id="txtReview" rows="5" cols="70" name="review"></textarea> <br /> <input type="button" value="[Delete]" id="btnDeleteDetail" style="display: block; margin:auto; text-decoration:underline; text-align: right; border:none; cursor:pointer; color:#412C82; " onclick="this.parentNode.parentNode.removeChild(this.parentNode);" /> </div> <form method="post" action="#"> <div id="writeroot"></div> </form> <asp:Button ID="btnAddDetail" autopostback="false" Text="Add Detail" CssClass="formbutt" OnClientClick="moreField();return false;" runat="server" /> <br /> </div>Tal como está actualmente, ejecutar este código duplica el formulario sin problemas, pero cualquier texto ingresado en el primer formulario se incluirá en los formularios posteriores. Gracias por la ayuda por adelantado.
<div id="readroot" style="display: block"> Debería haber sido display: none , que proporciona una pizarra limpia en el clon.