2010-09-28 5 views
0

J'ai utilisé des fonctions ajax comme $ .post() en utilisant jQuery 1.3.2 et j'ai réussi jusqu'à aujourd'hui, quand je suis passé à v1.4.2 après avoir téléchargé jquery UI (jquery-ui-1.8.5 .custom.min.js) pour utiliser les boutons radio de jQuery UI ($("#radio").buttonset();), qui ne fonctionnait pas avec ma version (il est dit .buttonset() n'est pas défini).
Après le passage à la nouvelle version, il semble que le rappel dans $.post ne fonctionne pas. L'appel est fait (je vois la réponse dans firebug)
Quelqu'un peut-il me dire ce qui ne va pas et comment le réparer? S'il vous plaît dites-moi si plus d'informations sont nécessaires. Je n'ai ajouté aucun code car je pense que ce n'est pas une erreur de codage.
Merci

EDIT
Ceci est mon code ...
Problème de rappel jQuery ajax

<script language="javascript" src="jquery-1.4.2.js"></script> 
<script language="javascript" src="jquery-ui-1.8.5.custom.min.js"></script> 
</head> 

<body> 
<script> 
function get() { 
    $.post("php.php",{arg:"post"}, 
      function (data) { 
       alert(data); 
      }); 
} 
</script> 
<input type="button" value="Click" onclick="get()" /> 

et php:

<?php 
    if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
     die('post'); 
    } else { 
     die('get'); 
    } 
?> 
+0

Le type de données json? –

+0

Veuillez poster votre code de rappel $ .post. Le fonctionnement des callbacks a subtilement changé en 1.4.2, notamment lors de l'exécution d'un html qui remplace le javascript embarqué – Clicktricity

+0

oui. J'ai mis le type de données à json. J'ai également essayé un script de test avec le retour de texte, mais pas de chance .. – shyam

Répondre

0

Quel est le type de contenu envoyé en-tête de réponse de votre serveur? J'ai été capable de le reproduire ici http://jsfiddle.net/F58Yu/4/ en forçant le texte/XML en tant que type de contenu de réponse et XML non valide en tant que contenu.

Pas avec d'autres types cependant .. Avec aucun ensemble dataType qui est.

function get() { 
$.post("/echo/xml/",{xml:"<test>a/test>"}, 
     function (data) { 
      alert(data);    
      console.log("Returned"); 
      console.dir(data); 
     }); 

}

L'adresse et POST-données est une fonctionnalité de jsFiddle pour le test ajax, est-ce que je l'ai décrit.