C'est à dire pas de déclenchement Ajax de jQuery succès
Je suis en train de travailler sur un script pour charger des images asynchrone à l'aide de jQuery.
Voici un extrait de code de la fonction qui charge les images -
try{
for(img in imgsArray){
$.ajax({
async: false,
type: "get",
url:imgsArray[img],
success:function(imgFile){
alert("success");
//do something useful
},
error:function(XMLHttpRequest,status,error){
//do nothing
}
});//ajax
}
}
catch(e){
//oops
}
J'ai testé ce dans Firefox, Webkit (Safari,Chrome) et cela fonctionne.
Les images sont dans un dossier sur le serveur et je suis en utilisant jQuery 1.3.
des idées?
Je suppose que vous avez déjà regardé la réponse dans un violon? Que voyez-vous là?
La fonction d'erreur se faire frapper? Vous devriez mettre un peu de code pour voir ce que l'erreur est si quoi que ce soit.
ouais, ajouter une alerte dans vos prises de voir si c'est jeter une erreur. Aussi pouvez le changer pour "OBTENIR" de ne pas "get"
Merci pour l'aide. Je l'apprécie.
La fonction d'erreur se faire frapper? Vous devriez mettre un peu de code pour voir ce que l'erreur est si quoi que ce soit.
ouais, ajouter une alerte dans vos prises de voir si c'est jeter une erreur. Aussi pouvez le changer pour "OBTENIR" de ne pas "get"
Merci pour l'aide. Je l'apprécie.
OriginalL'auteur Peter | 2009-04-23
Vous devez vous connecter pour publier un commentaire.
Un simple correctif de ce problème est de fournir le jQuery réglage
dataType : 'text'
oudataType : 'xml'
oudataType : 'json'
ou de tout autre type de réponse.J'ai eu le même problème, mais ça fonctionne très bien, après en précisant le type de données paramètre dans le .appel ajax.
IE est vraiment pas intelligent de navigateur, il n'est pas que la valeur par défaut de la chaîne.
Essayer... bonne chance.
OriginalL'auteur Amber Mahajan
Essayez de configurer la mise en cache-option à false.
OriginalL'auteur John Korsnes
J'ai eu un problème similaire -- IE semble déclencher l'échec si elle ne peut pas analyser la réponse au format xml, même si la demande a été un succès, donc si vous êtes à la demande d'une image, par exemple, il serait de retour d'un xhr.statut de 200 dans le message d'erreur de bloc.
J'ai collé mon "succès" de la fonctionnalité de la réussite pour les FF et dans l'erreur bloc enveloppé dans un "if (xhr.status == 200)" conditionnelle.
OriginalL'auteur
utiliser la balise suivante à l'appui de la croix-navigateur
$.de soutien.la scro = true;
OriginalL'auteur cherry
En fin de compte, j'ai dû créer une fonction distincte pour les navigateurs IE.
L'objectif était de tester une image à un endroit de sorte que le code ressemblait -
Il n'est pas vraiment la réponse à ma question, mais c'est un travail fonctionnel autour de.
OriginalL'auteur Peter
J'ai eu des problèmes similaires avec IE et AJAX depuis quelques jours avec mon JSONP Service Web. Même la plus petite erreur dans votre code peut entraîner tout casser dans IE.
Probablement la meilleure chose à faire est de débogage de la page dans IE à l'aide de Visual Web Developer Express de Visual Studio. Voici un tutoriel de comment le faire:
Comment débogage JavaScript avec Visual Web Developer Express
Suivez les instructions et peut-être placer des points d'arrêt au début de la requête AJAX.
Essayez ces choses:
Espère que vous obtenez ce travail bientôt!
Merci pour les suggestions.
OriginalL'auteur Simeon Wislang
jeu de " cache: false,' à l'intérieur .ajax config qui fonctionne pour moi 🙂
OriginalL'auteur Aviad
Je suggérerais à l'aide de Charles Proxy pour voir ce qui se passe - c'est à dire la demande de sortir? Quelle est la réponse?
Aussi, je pense qu'il pourrait y avoir une Exception levée, alors pourquoi ne pas ajouter quelques alertes dans la section Catch pour voir ce qui se passe?
OriginalL'auteur Seb
si vous le succès est:
changement pour cette:
OriginalL'auteur user1809556
Une autre chose que vous pouvez essayer, de très près la même que la solution de John Saunders, c'est d'essayer de "jsonp" comme le type de contenu, au lieu de json pour les données json type de réponse attendue. J'ai dû essayer avec IE pour obtenir mon bug de s'en aller, ce qui était normal code de travail dans tous les autres navigateur, sauf IE.
Voici mon code qui a travaillé:
Acclamations.
OriginalL'auteur uch
Je suis venu à cette question questions similaires. Et les réponses ci-dessus fixe beaucoup de mes problèmes. Cependant, il y a un truc que je dois faire. N'utilisez pas de
utilisation
OriginalL'auteur JoeyZhao
Si vous utilisez l'entrée de vérifier si vous en avez un choix sélectionné, si vous n'avez pas c'est à dire ne pas passer ce paramètre à la fonction ajax.
OriginalL'auteur Daniel