Salve,
Ho dei problemi ad unire gli itnervalli di tempo con ajax, mi spiego:
Faccio partire la mia richiesta asincrona:
codice:
ajax.open("get", "prova.txt", true);
ajax.send(null);
Ora vorrei controllare a intervalli regolari quando ajax.readyState === 4.
Ho una funzione che esegue il controllo, ma non riesco a inserire delle pause in modo corretto (sì ho litigato con setTimeout):
codice:
function control_ajax(ajax, link, link_tmphtml, i) {
if(ajax.readyState === 4) {
if(ajax.status == 200){
link.innerHTML=link_tmphtml;
return true;
}else{
alert(ajax.status);
link.innerHTML=link_tmphtml;
return false;
}
}else{
if(i<100){
i++;
setTimeout("control_ajax(" + ajax + ", " + link + ", " + link_tmphtml + ", " + i + ")",300);
}else{
link.innerHTML=link_tmphtml + "Tempo scaduto";
return false;
}
}
}
Questo codice mi dà un errore al passaggio degli argomenti a setTimeout, effettivamente ajax è un oggetto e io lo passo come una stringa. Come faccio a fare il debugging?
Se ci sono modi migliori per fare questa cosa sarò felice di utilizzarli.
Grazie.