Ciao a tutti,
ho trovato in rete questo interessante scipt (funzionante) che mi permette di aggiunere e rimuovere righe da un tbody con id="MyContent"
Prima di cancellare una riga però vorrei leggere gli id dei campi input della riga da cancellare (per memorizzarli in un array)
potete aiutarmi a capire qual'è il comando che mi permette di leggere gli id?
Questo è lo scipt:
codice:
<script>
var myVar = { id: 0}
var voce = new Array();
var valore = new Array();
var id = new Array();
//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";
inpt.name = "voce[]";
inpt.id = "id"+myVar.id;
myVar.id = myVar.id+1;
//Gli altri campi
td = document.createElement('td');
tr.appendChild(td);
inpt = document.createElement('input');
td.appendChild(inpt);
inpt.type = "text";
inpt.name = "valore[]";
inpt.id = "id"+myVar.id;
myVar.id = myVar.id+1;
td = document.createElement('td');
tr.appendChild(td);
inpt = document.createElement('input');
td.appendChild(inpt);
inpt.type = "hidden";
inpt.name = "id[]";
inpt.id = "id"+myVar.id;
myVar.id = myVar.id+1;
td = document.createElement('td');
tr.appendChild(td);
var a = document.createElement('a');
td.appendChild(a);
a.href = '#';
a.onclick = deleteRowFromTbody;
a.appendChild(document.createTextNode('Elimina'));
}
//Cancella la riga corrispondente al link Cancella cliccato
var deleteRowFromTbody = function(){
if(confirm("Procedo con la cancellazione di questa voce?"))
{
//Ottengo il tr dal link
var tr = this.parentNode.parentNode;
//Lo cancello
tr.parentNode.removeChild(tr);
myVar.id = myVar.id-3;
// qui vorrei accedere agli id dei campi text della riga che sto cancellando
// COME SI FA?
}
}
//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";
myVar.id = 0;
}
</script>
grazie