CodeIgniter/jQuery - Ajax appel renvoie pleine page html à la place de mon echo
De mon point de vue, j'ai un appel ajax:
$(".previous").click(function() {
$.ajax({
type: "POST",
url: "planner/get_cal",
data: {current_month: current_month},
success: function(msg){
alert(msg);
}
});
la get_cal fonction dans mon Planificateur de contrôleur:
function get_cal()
{
echo "dinosaurs";
}
Cependant, au lieu de renvoyer des "dinosaures", il renvoie une pleine page HTML. Je ne peux pas comprendre pourquoi. Pensées? Merci beaucoup.
Avez-vous un modèle lié à votre contrôleur qui rendrait-il?
qu'obtenez-vous lorsque vous essayez manuellement à partir d'un navigateur ?
aller à la get_cal page manuellement me met une page blanche avec "les dinosaures", comme prévu.
Avez-vous essayé d'ajouter un slash?
Je seconde la tête / -- dans le cas Contraire, les choses semblent très bien, et cela ne devrait pas se produire.
qu'obtenez-vous lorsque vous essayez manuellement à partir d'un navigateur ?
aller à la get_cal page manuellement me met une page blanche avec "les dinosaures", comme prévu.
Avez-vous essayé d'ajouter un slash?
url: "/planner/get_cal",
Je seconde la tête / -- dans le cas Contraire, les choses semblent très bien, et cela ne devrait pas se produire.
OriginalL'auteur cabaret | 2011-04-12
Vous devez vous connecter pour publier un commentaire.
J'ai résolu ce problème en utilisant un slash comme suggéré dans les commentaires à ma question.
OriginalL'auteur cabaret
Vous pouvez également l'obtenir en ajoutant à la sortie après l'écho dans votre fichier php comme ci-dessous:
Il va travailler. 🙂
exit
pourreturn
bien, 🙂OriginalL'auteur RiksAndroid
Essayez de définir le type de données "texte"
OriginalL'auteur JHurrah
Lors de l'utilisation de la CodeIgniter structure de Controler/Méthode uri segments je l'ai trouvé beaucoup plus facile à utiliser ../../contrôleur/méthode que l'adresse de ma page en ajax de jquery demandes. Je recommande également de spécifier un type de données de sorte que la chaîne est analysée et retourné comme un objet.
Voici un exemple;
OriginalL'auteur Peter
Ce type de problème se faire lorsque votre fichier php et un fichier html ne sont pas sur la bonne voie afin que le serveur apache a pu analyser les fichiers php.
Sans mentionner de type:'text' et tout autre format aussi, ajax travail.
Mais assurez-vous que votre serveur est atteint fichier php. Sinon tout le fichier sera traité comme du texte et s'en retourna.
OriginalL'auteur Rakesh Ray
Pour quelqu'un qui est en utilisant le Zend Framework, je connaît les mêmes problèmes où l'AJAX réponse a été de retour à la pleine HTML au lieu de la
json_encode()
réponse. Cela a été résolu par l'ajout de ce qui suit à mon contrôleur:OriginalL'auteur altimus
Voulais juste mentionner:
l'url va vraiment dépendre de la façon dont vous avez votre .htaccess et la structure des dossiers.
Donc, la meilleure façon est d'essayer plusieurs url, à savoir:
../../contrôleur/méthode
../contrôleur/méthode
server_folder/index.php/contrôleur/méthode
http://example.com/server_folder/index.php/controller/method
et puis de choisir celui qui fonctionne le mieux dans une situation donnée.
OriginalL'auteur Maxim Safioulline
//Affichage de la Page
//Contrôleur
//ajax la page d'affichage de
OriginalL'auteur Ragul