Devellopement dans le monde de Domino, XPages et jQuery
Je voulais utiliser $.when ( ...).then (); pour effectuer un nombre indéfini de requête ajax ; et attendre qu'elles soient toutes achevées.
Probleme:
si on peut écrire:
$.when ( ajax1(), ajax2() ).then ( go() );
on ne peut pas effectuer quelque chose comme :
$.when ( [ ajax1(), ajax2()] ).then ( go() );
cela pour permettre de générer un tableau ( de taille variable) avec toutes les fonctions à appeler.
cf la document de $.when. Si on donne un objet, jQuery considère que c'est un unique object defer ;(
C'est que vient une nouveauté pour moi : apply.
En utilisant apply, je peux générer ma liste d'arguments, qui seront bien passés en paramètres !
soit:
var args=new Array();
args.push ( ajax1());args.push(ajax2());
$.when.apply (this, args ).then( go () );
et voila, je peux gérer un tableau, avec par exemple:
if (tester() ) args.push(ajax3());