Ho un semplice script ajax che interroga una pagina php. La pagina php ritorna una stringa così formattata
nome_elemento_div|contenuto_elemento_div
che viene poi interpretata da ajax.
Il mio problema è che la pagina php, a volte non ritorna niente.
Lo script ajax, però, si aspetta di ricevere nome_elemento_div|contenuto_elemento_div e pur funzionando correttamente, se vado nella consolle degli errori ho questo errore
Errore: document.getElementById(update[0]) is null
File sorgente: http://localhost/BusinessOnline_2/aj...equest_ajax.js
Riga: 29
Lo script ajax è questo. Ho messo in grassetto la parte dello script che mi dà errore. Penso che devo semplicemente dire con javascript che se document.getElementById(update[0]).innerHTML è nullo, non devo ritornare niente.
// Questo file esegue richieste asincrone per + applicazioni
function createRequestObject() {
var ro;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
ro = new ActiveXObject("Microsoft.XMLHTTP");
}else{
ro = new XMLHttpRequest();
}
return ro;
}
var http = createRequestObject();
function sndReq(action,file) {
http.open('get', file+'?action='+action);
http.onreadystatechange = handleResponse;
http.send(null);
}
function handleResponse() {
if(http.readyState == 4){
var response = http.responseText;
var update = new Array();
if(response.indexOf('|' != -1)) {
update = response.split('|');
document.getElementById(update[0]).innerHTML = update[1];
}
}
}
Se qualcuno sta cercando di costruirsi una sua chat in ajax e php che interroghi il db solo quando è stata postato un nuovo messaggio, mi segnali il suo post. Ne sto costruendo una molto semplice e perfettamente funzionante, non fosse che per questo errore!

Rispondi quotando