Ciao a tutti,
Sono di fronte a un problema che non riesco a risolvere, sicuramente è una banalità.
Attraverso prototype eseguo delle chiamate AJAX. Ho una semplice funzione sendAjaxRequest che per semplicità prepara la richiesta con un formato comune a tutta la web application:
Tutto funziona perfettamente, eccetto quando silent è false e il secondo argomento passato alla funzione sendAjaxRequest già contiene la definizione di onComplete (stesso problema per onCreate che attualmente non sto usando).codice:function sendAjaxRequest() { var url = arguments[0]; var prop = arguments[1]; var silent = false; if (arguments.length > 2) { var silent = arguments[2]; } prop.method = 'post'; if (!silent) { prop.onCreate = function(t) { document.body.appendChild(new Element('div', { 'id' : 'wait' })); }; prop.onComplete = function(t) { $('wait').remove(); }; } prop.onFailure = function(t) { alert('Errore di comunicazione con il server.'); }; return new Ajax.Request(url, prop); }
Come faccio a fare in modo che i trigger onCreate e onComplete vengano aggiunti se già definiti in prop?
Questa chiamata funziona, ma l'alert viene sovrascritto dalla onComplete assegnata nella sendAjaxRequest:
Come faccio a fare in modo che la sendAjaxRequest aggiunga, in "append", alla eventuale onComplete già esistente evidando quindi di sovrascrivere il codice passato alla funzione?codice:sendAjaxRequest('/url', { onComplete: function(t) { alert('test'); } });
Grazie.

Rispondi quotando