Salve,
ho un problema nella seguente porzione di codice:

codice:
var utente=responseXML.getElementsByTagName("risposta")[0].childNodes;
document.getElementById("contatti").innerHTML='<ul id="listaContatti">[/list]';
lista = document.getElementById("listaContatti");
for (i=0; i<utente.length; i++) {
	username = utente[i].childNodes[0].firstChild.nodeValue;
	stato = utente[i].childNodes[1].firstChild.nodeValue;
	listItem = document.createElement("li");
	listItem.appendChild(document.createTextNode(username));
	lista.appendChild(listItem);
	if(stato=="Disponibile"){
		lista.childNodes[i].setAttribute('style','background: url(images/verde.png) no-repeat');
		lista.childNodes[i].setAttribute('onmouseover','this.style.background="url(images/verdel.png) no-repeat"');
		lista.childNodes[i].setAttribute('onmouseout','this.style.background="url(images/verde.png) no-repeat"');
	}
	else if(stato=="Occupato"){
		lista.childNodes[i].setAttribute('style','background: url(images/rosso.png) no-repeat');
		lista.childNodes[i].setAttribute('onmouseover','this.style.background="url(images/rossol.png) no-repeat"');
		lista.childNodes[i].setAttribute('onmouseout','this.style.background="url(images/rosso.png) no-repeat"');
	}
	else{
		lista.childNodes[i].setAttribute('style','background: url(images/giallo.png) no-repeat');	
		lista.childNodes[i].setAttribute('onmouseover','this.style.background="url(images/giallol.png) no-repeat"');
		lista.childNodes[i].setAttribute('onmouseout','this.style.background="url(images/giallo.png) no-repeat"');
	}
	lista.childNodes[i].setAttribute('onclick','alert(i);');
}
In pratica a me serve aggiungere a ciascun nuovo[*] un attributo che (in questo caso solo al fine di un controllo) mi stampa l'attuale indice del for al quale il[*] appartiene nel momento in cui clicco sul[*]...ma la "i" che passa è sempre 2, dove 2 è la lunghezza della variabile "utente".
Dov'è il problema???