Scusate...m'è partito un invio per sbalgio.
codice:
function CambioStato()
{
if (ajax_req.readyState == 4 && ajax_req.status == 200)
{
//alert(ajax_req.responseText);
var obj = eval("(" + ajax_req.responseText + ")");
var comm_root=document.getElementById('tab_commenti');
var comm_src=document.getElementById('blocco_comm');
var n_comm;
var tot_com = obj.TOT_COMM;
...........
...........
if(obj.IS_COMMENTI == true){
var clone = new Array();
//alert(comm_root.childNodes.length);
while( comm_root.hasChildNodes() ) {
comm_root.removeChild( comm_root.firstChild );
}
document.getElementById("no_commenti").style.display="none";
document.getElementById("tab_commenti").style.display="block";
for(n_comm=1;n_comm<=tot_com;n_comm++){
var a,p,img,span = new Array();
var url_canc,url_mod;
clone[n_comm]=comm_src.cloneNode(true);
clone[n_comm].setAttribute('id','blocco_comm'+n_comm);
a = clone[n_comm].getElementsByTagName("a");
p = clone[n_comm].getElementsByTagName("p");
img = clone[n_comm].getElementsByTagName("img");
span = clone[n_comm].getElementsByTagName("span");
// compilo i campi interni al divi tra cui gli eventi onclick
a[0].innerHTML = eval("obj.comm"+n_comm+".COM_USER");
...
...
img[1].src = eval("obj.comm"+n_comm+".U_IMG_MOD");
img[2].src = eval("obj.comm"+n_comm+".U_IMG_CANC");
url_mod = encodeURI(eval("obj.comm"+n_comm+".U_COM_MOD"));
url_canc = encodeURI(eval("obj.comm"+n_comm+".U_COM_CANC"));
img[1].onclick = function() {Richiesta(url_mod);}
img[2].onclick = function() {Richiesta(url_canc);}
...
...
// poi appendo il nodo appena clonato al nodo padre
comm_root.appendChild(clone[n_comm]);
clone[n_comm].style.display="block";
}
document.getElementById("blocco_comm").style.display="none";
}else{
document.getElementById("no_commenti").style.display="block";
document.getElementById("tab_commenti").style.display="none";
}
}
}
Questa è la funzione di richiesta ajax
codice:
var ajax_req = null;
function Richiesta(url)
{
url = url.replace(/\&/g,'&');
if (url.length > 0)
{
alert(url);
ajax_req = RicavaBrowser(CambioStato);
ajax_req.open("GET", url, true);
ajax_req.send(null);
}
else
{
document.getElementById("Title").innerHTML = "";
}
}
il problema secondo me è sul modo in cui agiscono gli onclick. Sono sicuro di inserire il valore corretto perchè ho verificato con alert che url_mod e url_canc sono corretti.
Ma quando ci si clicca sopra è come se passasse sempre url_mod e url_canc dell'ultimo nodo inserito.
Mi sapete aiutare?