Il codice che vi propongo serve per cancellare tutte le righe di una data tabella, tranne le prime due, ed a cancellare il value di un <input messo nella seconda colonna della seconda riga.
La prima versione funziona solo con IE, la seconda funziona sia con IE che con mozilla firefox e NN
Quello che vi chiedo è di aiutarmi a capire perchè la prima versione non funziona con mozilla.
codice:
function Button0_onclick()
{
var IsMSIE = navigator.appName.indexOf("Microsoft") != -1;
if(IsMSIE)
{alert("IE");
//-------------------------------------
//questa versione funziona solo con IE
//-------------------------------------
var i;
var t = document.getElementById("table11");
var nr = t.childNodes[0].childNodes.length;
//cancella le righe tranne le prime 2
for(i = nr -1; i >= 2; i--)
{
t.childNodes[0].removeChild(t.childNodes[0].childNodes[i]);
}
//cancella il testo della 2° colonna, 2° riga
t.childNodes[0].childNodes[1].childNodes[1].childNodes[0].value = "";
}
else
{alert("not IE");
//----------------------------------------------------
//questa versione funziona sia con IE che con mozilla
//----------------------------------------------------
var i;
var t = document.getElementById("table11");
var tb = t.getElementsByTagName("tbody").item(0);
var r = tb.getElementsByTagName("tr");
var nr = r.length;
for(i = nr -1; i >= 2; i--)
{
tb.removeChild(r[i]);
}
var inp = r[1].getElementsByTagName("input").item(0);
inp.value = "";
}
}
Un grazie sentito a tutti