Al utilizar jQuery diferidos y $.when
para cargar muchos objetos en paralelo.jquery falla de giro diferido en éxito
$.when(
a.ajax(), b.ajax(), c.ajax()
).then(
//do something when all are complete
complete();
);
Ahora, se b.ajax()
veces no, pero yo no realmente importa. Solo quiero esperar hasta que todas las llamadas se hayan completado antes de llamar a complete().
Lamentablemente, tan pronto como b
falla, el when()
rechaza y nunca desencadena la devolución de llamada then()
. Este es el comportamiento esperado de AFAIK para $.when()
, pero dosent me corresponde en este caso.
que efectivamente quieren una manera de decir:
$.when(
a.ajax(), b.ajax().fail(return success), c.ajax()
).then(...)
O quizás hay una manera diferente de usar when()
, o una construcción más adecuada?
@Ates Creo que su respuesta eliminada puede solucionarse simplemente resolviendo ese nuevo objeto diferido antes de volver. – Alnitak
posible duplicado de [$. Diferido: cómo detectar cuándo se ha ejecutado cada promesa] (http://stackoverflow.com/q/19177087/1048572) – Bergi