2010-11-12 7 views

Répondre

0

Vous ne pouvez pas. (voir premier commentaire). Et croyez-moi, vous ne voulez pas. Le rappel d'erreur est destiné aux erreurs liées à la requête ajax et non aux erreurs que vous considérez comme des erreurs (c'est-à-dire des données non-sens qui sont valides json/xml/quelquechose ou un jeu de résultats vide). Cependant, si vous voulez appeler votre fonction d'erreur, créez-la en tant que fonction régulière (nommée) au lieu d'une fonction anonyme et appelez-la manuellement lorsque vos critères sont remplis. Notez que le fait de rendre votre fonction régulière en fait que ce n'est plus une fermeture - mais sans voir votre appel $.ajax(...); complet et du code environnant, il est impossible de dire si cela sera un problème ou non.

+0

Il est inexact de dire que vous * ne pouvez pas *, vous pouvez certainement l'appeler, 'this.error()' si aucun contexte n'est spécifié. –

+0

@TheifMaster: Si j'appelle this.error() depuis la fonction de succès, une erreur valide aurait déjà été appelée si elle est présente, non? –

+0

Si la fonction d'erreur est appelée par jQuery, votre fonction de succès n'a pas été appelée et ne sera pas appelée - donc oui, c'est sûr. – ThiefMaster