2010-03-11 4 views
0

Je ne suis pas sûr qu'il est possible maintenant de l'URL que j'essaie. S'il vous plaît voir cet URL: http://www.heiaheia.com/voimakaksikko/stats.json

Il sert toujours la même fonction de remplissage "voimakaksikkoStats". Il est bien formé JSON, mais je n'ai pas pu le charger à partir du serveur distant. A-t-il besoin d'un peu de travail côté serveur ou peut-il être chargé avec javascript? Je pense que les problèmes doivent avoir quelque chose à avec cette fonction de rappel ...

JQuery n'est pas obligatoire, mais ce serait bien.

Ce (rappel = voimakaksikkoStats) retourne rien (Firebug -> net -> réponse), et alerte ne se déclenche pas:

$.getJSON("http://www.heiaheia.com/voimakaksikko/stats.json?callback=voimakaksikkoStats", function(data){ 
    alert(data); 
}) 

mais ceci:

$.getJSON("http://www.heiaheia.com/voimakaksikko/stats.json?callback=?", function(data){ 
    alert(data); 
}) 
(rappel =?)

retours:

voimakaksikkoStats({"Top5Sports":[],"Top5Tests":{"8":"No-exercise ennuste","1":"Painoindeksi","2":"Vy\u00f6t\u00e4r\u00f6n ymp\u00e4rys","10":"Cooperin testi","4":"Etunojapunnerrus"},"Top5CitiesByTests":[],"Top5CitiesByExercises":[],"ExercisesLogged":0,"Top5CitiesByUsers":[""],"TestsTaken":22,"RegisteredUsers":1}); 

Mais je ne peux pas y accéder ... Dans les deux cas l'alerte ne se déclenche jamais. Quelqu'un peut-il aider?

+0

J'essaye d'obtenir ceci du serveur à distance utilisant JSONP. Le serveur retourne toujours voimakaksikkoStats - et ne reçoit pas dynamiquement la fonction callback. Est-ce que cela cause des problèmes? – Antti

Répondre

0
<script type="text/javascript"> 
function voimakaksikkoStats(obj) { 
    alert(obj.TestsTaken); 
} 
</script> 
<script type="text/javascript" src="http://www.heiaheia.com/voimakaksikko/stats.json"></script> 

Je ne ai jamais réussi à travailler avec jQuery, mais le simple code ci-dessus résolu mes problèmes. J'ai trouvé l'aide de Yahoo: http://developer.yahoo.com/common/json.html

0

est le script essayant de récupérer json de http://www.heiaheia.com aussi sur http://www.heiaheia.com?

sinon c'est la cause, il est actuellement pas autorisé à faire une demande (en utilisant javascript) à un autre serveur que celui servant le script

+0

Oui, le serveur distant et nous essayons d'utiliser JSONP pour cela. – Antti

0

Pour obtenir votre fonction de test fonctionne, essayez de changer de callback=?

+0

Ah, j'ai une erreur sur ma question. La réponse JSON est lorsque j'utilise callback = ?. Si j'ai callback = voimakaksikkoStats alors la réponse est vide. – Antti

1
<script type="text/javascript"> 
function voimakaksikkoStats(stats) { 
    var ul = new Element('ul'); 
    ul.insert(new Element('li').update('Registered users: '+ stats['RegisteredUsers'])); 
    ul.insert(new Element('li').update('Tests taken: '+ stats['TestsTaken'])); 
    ul.insert(new Element('li').update('Top5 sports: '+ stats['Top5Sports'].join(', '))); 
    $(document.body).insert({'bottom': ul}); 
} 
</script> 
<script type="text/javascript" src="http:/www.heiaheia.com/voimakaksikko/stats.json"></script> 

Cet exemple utilise Prototype.js pour créer la liste avec des données statistiques de données, et met ensuite cette liste au bas du corps du document.

+0

Oui, je l'ai eu juste juste avant cela - mais cela m'aurait certainement aidé aussi! – Antti

Questions connexes