Signaler

Appel ajax/ Datatable/Erreur JSON [Résolu]

Posez votre question marco_cheech 7Messages postés lundi 1 février 2016Date d'inscription 8 février 2017 Dernière intervention - Dernière réponse le 8 févr. 2017 à 15:59 par marco_cheech
Bonjour,
Bonjour,

Je bute sur un problème depuis quelques jours, j'initialise une datatable qui doit se remplir qu'après la saisie de l'utilisateur.

Donc je fais mon appel ajax dans la méthode Change().

$("input[type='text']").change(function(){

$.ajax({
url: 'transfert.php',
type: 'POST',
data: 'type=detail',
dataType: 'json',
success: function (json) {
console.log('success');
},
error : function(resultat, statut, erreur){
alert(resultat);
alert(statut);
alert(erreur);
console.log("error",resultat, statut,erreur);
}
});


Seulement une alerte se déclenche :SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

Quand je regarde dans l'inspecteur la réponse, j'ai toute la page en html et la chaîne JSON tout en bas (qui me semble correcte).

Toujours dans l'inspecteur, dans l'aperçu je vois que il y a mes zones de textes qui apparaissent avant la chaîne JSON. Je pense que c'est à cause de cela que je ne peux parser les données.

Comment puis-je spécifier que l'appel ajax est pour ma datatable ?

Merci d'avance pour votre aide !
Afficher la suite 
Utile
+1
moins plus
Salut,

L'affichage des zones de textes html avant la chaine JSON semble effectivement être le problème.

Il n'y a rien de plus à spécifier au niveau de l'appel ajax, le problème vient de fichier transfert.php qui doit retourner uniquement le JSON et pas d'html afin que javascript puisse le parser.

Bonne journée,
marco_cheech 7Messages postés lundi 1 février 2016Date d'inscription 8 février 2017 Dernière intervention - 8 févr. 2017 à 15:59
Salut, merci pour ta réponse !
En effet, j'utilise le moteur de template Smarty qui me générait une en-tête avant ma chaîne JSON. J'ai donc séparer mon code en 2 page différentes.

Bonne journée
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !