Buenas, estoy haciendo un formulario donde el ultimo campo puede rellenarse una o varias veces, me explico, quiero que si el usuario desea le de a un link y aparezca otro campo abajo del que se crea por defecto en el formulario para rellenar el que viene de serie mas ese o esos, según los que haya creado, así hasta por ejemplo 5.
Según el código que tengo, se crean los nuevos campos pero luego no se eliminan. También me gustaria saber cuando mando el formulario en que variables puedo recoger esos valores, creo que lo mejor seria un array y lo voy recorriendo en php con un each, pero eso no se como ponerlo en este código. También corregir para borrar el ultimo campo que no se donde tengo el fallo
Código HTML:
Ver original<td>Email principal:
</td> <td colspan="2"><CENTER id="mailManagment"><A HREF="javascript:newMail()">Agregar otro mail
</A> </CENTER></td>
Código Javascript
:
Ver original<SCRIPT LANGUAGE="JavaScript">
var mailcount = 0;
function cerrar(obj){
email=document.getElementById("emailNode"); email.parentNode.removeChild(email.parentNode.childNodes[mailcount+7]);
mailcount --;
if (mailcount==0){
//retirar el código para borrar la última dirección de mail document.getElementById("mailManagment").removeChild(document.getElementById("cerrarMail"));
}
}
function newEntry(inputName,text){
newInput = document.createElement("input");
newInput.type="text";
newInput.name=inputName;
newNode = document.createElement("tr");
newNode.appendChild(document.createElement("td"));
newNode.appendChild(document.createElement("td"));
newNode.firstChild.appendChild(document.createTextNode(text));
newNode.lastChild.appendChild(newInput);
return newNode;
}
function newMail(){
mailcount ++;
email=document.getElementById("emailNode");
//Creo el nuevo campo
newNode=newEntry("email"+mailcount,"Email alternativo "+mailcount+":");
//Muestro el nuevo campo
email.parentNode.insertBefore(newNode,email);
//Agregar el código para borrar el último mail
if (mailcount==1){
newClose = document.createElement("a");
newClose.id="cerrarMail";
newClose.href="javascript:cerrar(this)";
newClose.appendChild(document.createTextNode("Borrar último"));
document.getElementById("mailManagment").appendChild(newClose);
}
}
</SCRIPT>