ciao,
faccio una chiamata ajax con mootools a uno script php.
lo script php restituisce del codice html cosi che onSuccess() popolo un div con i contenuti richiesti.
tutto funziona a dovere....
il problema é che il metodo php puo fallire e generare un'eccezione. Ora come ora, se ho un'eccezione, la passo al posto dell'atteso HTML... cosi facendo, il testo dell'errore é visualizzato nel div al posto dei contenuti richiesti.
la domanda é:
quale é il modo migliore per "dire" ad ajax che in effetti il php ha fatto cilecca?!
intanto ho anche messo un onFailure() che fa un alert() nel caso che ci sia un 404 o roba simile... ma non ho idea di come entrare nel onFailure() se ho un'eccezione gestita dal mio blocco try/catch in php...
qui un pezzo di codice ajax (il php é molto semplice e restituisce un
):
codice:
a.addEvent("click", function (event) {
//the url to the action
var url_to_action = a.href;
var parent = a.getParent('div');
var loader = parent.getElements('dd.ajax_loader');
loader.removeClass('invisible');
//make the ajax call, replace text
var req = new Request.HTML({
method: 'post',
url: url_to_action,
update: parent,
onFailure: function(responseText, responseXML){
alert('errore');
},
onComplete: function(responseText, responseXML) {
//hide the loader img
loader.addClass('invisible')
//il parent dovrebbe essere popolato con l'html
}
}).send();
//prevent normal link behavior
event.stop();
});
thanks