JSONP et étiquette non valide
Utilisant mootools et JsonP-je obtenir non valide "étiquette" erreur dans la console d'Erreur de Firefox
JsonP semble fonctionner (je reçois correctement les données)
{"jsondata":[{"title":"title1","link":"http://xxxx.xxx.xxx","thumbsrc":"http://xxxx.xxx.xxx/17_t.jpg" ,"description":".......","pubDate":"2009-03-09 06:26:00",},{"title":"title2","link":"http://xxxx.xxx.xxx","thumbsrc":"http://xxxx.xxx.xxx/16_t.jpg" ,"description":".......","pubDate":"2009-03-09 06:08:09",}]}
mais j'ai l'étiquette non Valide erreur sur "jsondata"
le même fichier fonctionne bien avec la demande.json
virgule supprimé... rien
c'est le code que j'utilise
fenêtre.addEvent('domready', function() {
var gallery = $('gallery');
new JsonP('http://myjsoncodeurl',{
onComplete: function(jsonObj) {
addImages(jsonObj.jsondata);
}
}).request();
var addImages = function(images) {
images.each(function(image) {
var el = new Element('div', {'class': 'item'});
var name = new Element('h3').inject(el);
var a1 = new Element('a', {'href': image.link,'html': image.title}).inject(name);
var desc = new Element('span', {'html': image.description}).inject(name, 'after');
var a2 = new Element('a', {'href': image.link}).inject(desc,'after');
var img = new Element('img', {'src': image.thumbsrc}).inject(a2);
el.inject(gallery);
});
};
});
il fonctionne avec la normale de la demande.Json, mais JSONP qui n'aime pas mon code 🙁
La discussion à ce sujet ici: stackoverflow.com/questions/1051196/...
OriginalL'auteur | 2009-04-09
Vous devez vous connecter pour publier un commentaire.
Avec JSONP, votre réponse devrait être de retour d'un appel de fonction JavaScript (c'est à dire de rappel) avec les données JSON transmis comme argument. Si votre réponse est un simple vieux JSON texte, il ne fonctionnera pas dans le contexte de JSONP. Vous devez adapter votre backend à accepter un rappel de l'argument et de l'appel que le rappel avec les données JSON.
un: 42 });</script>
OriginalL'auteur Ateş Göral
Vous avez besoin de mettre entre parenthèses (normal, non bouclés) autour de votre objet, parce que parfois, Javascript devient horriblement confus et pense que vous êtes en train de faire une déclaration sur l'étiquette, un type d'instruction, que je ne savais pas existé jusqu'à ce que j'ai Googlé ce problème.
https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Statements#label_Statement
Essayer de passer votre objet,
{"jsondata":[ ... ]}
, comme({"jsondata":[ ... ]})
à la place. Qui semble faire le tri.OriginalL'auteur Mikey C
De le mettre ici:
http://json.parser.online.fr/
Montre que la validité de son, mais a la virgule supplémentaire (qui sera bork c'est à dire, bien que FF doit le manipuler). Si la suppression de la virgule ne résout pas le problème, vous aurez besoin de publier plus de votre code afin de nous aider à trouver l'erreur.
OriginalL'auteur jvenema
Cela pourrait être dû à l'apport des virgules après les dates
OriginalL'auteur Maurice Perry