certo, basta che aggiungi l'elemento all'interno della form e al submit viene inviato come un elemento normale (dal punto di vista del browser è un elemento normale).
Ti faccio un esempio con una table:
Codice HTML
Ho messo il thead ed il tbody perché potrei essere interessato a cancellare il contenuto della tabella, ma l'intestazione la devo tenere, compreso il link per aggiungere righe.codice:<form action=".." method="post"> <table> <thead> <tr> <th>Nome</th> <th>Cognome</th> <th>Indirizzo</th> <th>Città</th> <th>Aggiungi Riga</th> </tr> </thead> <tbody id="MyContent"> </tbody> </table> </form> Vuota tabella </p>
Codice JS
codice://Crea una riga le celle e gli input all'interno, e poi l'aggiunge al tbody var addRowToTbody = function(){ //Ottengo l'elemento tbody var tbody = document.getElementById("MyContent"); //Creo un elemento tr var tr = document.createElement("tr"); //l'aggiungo al tbody tbody.appendChild(tr); //Continuo con gli altri elementi var td = document.createElement('td'); tr.appendChild(td); var inpt = document.createElement('input'); td.appendChild(inpt); //Setto i dati dell'input inpt.type = "text"; //Se sei pratico di PHP o ASP (credo lo supporti) non dovresti avere problemi a capire inpt.name = "name[]"; //Gli altri campi td = document.createElement('td'); tr.appendChild(td); inpt = document.createElement('input'); td.appendChild(inpt); inpt.type = "text"; inpt.name = "lastname[]"; td = document.createElement('td'); tr.appendChild(td); inpt = document.createElement('input'); td.appendChild(inpt); inpt.type = "text"; inpt.name = "address[]"; td = document.createElement('td'); tr.appendChild(td); inpt = document.createElement('input'); td.appendChild(inpt); inpt.type = "text"; inpt.name = "city[]"; td = document.createElement('td'); tr.appendChild(td); var a = document.createElement('a'); td.appendChild(a); a.href = '#'; a.onclick = deleteRowFromTbody; a.appendChild(document.createTextNode('Cancella')); } //Cancella la riga corrispondente al link Cancella cliccato var deleteRowFromTbody = function(){ //Ottengo il tr dal link var tr = this.parentNode.parentNode; //Lo cancello tr.parentNode.removeChild(tr); } //Cancella il tbody creando un altro elemento tbody e sostituendolo var emptyTbody = function(){ var tbody = document.getElementById("MyContent"); var newTbody = document.createElement("tbody"); tbody.parentNode.replaceChild(newTbody, tbody); newTbody.id = "MyContent"; } //Associo le funzioni ai link window.onload = function(){ document.getElementById("Adder").onclick = addRowToTbody; document.getElementById("Empty").onclick = emptyTbody; }

Rispondi quotando