2010-09-15 7 views
1

utilisant actuellement JQJQUERY IE AJAX callback Le succès ne fonctionne pas

1.4.2

Et je suis passé par ce forum et d'autres forums pour une solution simple ... puisque beaucoup ont eu ce problem..but je ne trouvé quelque chose qui semble fonctionner donc je suis annonce ce problème

 $(".editvolunteer").fancybox({ 
      'width'    : 970, 
      'height'   : 460, 
      'autoScale'   : false, 
      'transitionIn'  : 'none', 
      'transitionOut'  : 'none', 
      'type'    : 'iframe', 
      onClosed : function() { 
       $.ajax({ 
      type: "GET", 
      dataType: 'html', 
      cache: false, 
       url: "ajaxrosterupdate.php", 
      data: "x=60", 
       async: false, 

     success: function(data) {   

       $("#updateroster").html(data);  <---- this work in FF    

     } 
     success: function(resp, txtS, xhr) { 
          if (xhr.status==200) {  

           alert(xhr.status); <-- this alert box shows up in ie and FF 

           } else { 

          // alert(xhr.status); 

          } 
     } 

     }).responseText; 



    } 
     }); 

Je ne sais pas ce que je fais mal, je l'ai utilisé debugbar et je peux bouillonner le contenu html qui rEVIENT je l'ai utilisé Fiddler et je vois le contenu html ça revient là ... le xhr stat = 200 donc tout va bien ... mais il ne remplace pas le contenu $ ("# updateroster"). html (data).

Je me suis cogné la tête pendant les dernières 48 heures et bien j'ai besoin d'aide.

+0

Etes-vous sûr que le retour du HTML est * complètement * valide? IE peut être en train de s'en défaire, alors que FF le tolère. –

+0

bon point ..so pour tester les choses sur ce que j'ai fait, j'ai tout supprimé dans l'ajaxrosterupdate et juste ajouté Et il a imprimé que ...... devrais-je juste poster l'ensemble du code HTML c'est reurning? – andy

+0

@nick - vous aviez raison le problème était le html il avait des tags de script qui devaient être supprimés et des lignes vides ... je pense que je devrais l'avoir mis comme un autre fil de sorte qu'il aide quelqu'un – andy

Répondre

1

.html() utilise finalement .innerHTML ici, ce que semble semble que votre balisage à venir est invalide causant des problèmes.

S'il y a un problème avec le balisage et que vous ne voyez aucune erreur mais un résultat vide, il y a de fortes chances qu'un navigateur tolère ce HTML invalide, le montrant de son mieux, et un autre navigateur peut le supprimer entièrement ... ce qui semble être ce que IE fait pour vous.