2010-03-11 2 views
0

Я не уверен, возможно ли это сейчас с URL-адреса, который я пытаюсь. Пожалуйста, ознакомьтесь с этим адресом: http://www.heiaheia.com/voimakaksikko/stats.json

Он всегда выполняет ту же функцию заполнения «voimakaksikkoStats». Он хорошо сформирован JSON, но я не смог загрузить его с удаленного сервера. Нужна ли какая-либо работа со стороны сервера или она может быть загружена с помощью javascript? Я думаю, что проблемы должны иметь что-то с этой функцией обратного вызова ...

JQuery не является обязательным, но было бы неплохо.

Это (вызов = voimakaksikkoStats) ничего не возвращает (поджигатель -> сеть -> ответ), и предупреждение не пожар:

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

но:

$.getJSON("http://www.heiaheia.com/voimakaksikko/stats.json?callback=?", function(data){ 
    alert(data); 
}) 
(обратный вызов =?)

возвращается:

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}); 

Но я не могу получить доступ к нему ... В обоих примерах тревога не срабатывает. Может кто-нибудь помочь?

+0

Я пытаюсь получить это с удаленного сервера с помощью JSONP. Сервер всегда возвращает voimakaksikkoStats - и не динамически данную функцию обратного вызова. Это вызывает проблемы? – Antti

ответ

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> 

Я никогда не получил это работает с JQuery, но простой код выше решить мои проблемы. Я нашел помощь от Yahoo: http://developer.yahoo.com/common/json.html

0

- это сценарий, пытающийся извлечь json из http://www.heiaheia.com также на http://www.heiaheia.com?

, если это не является причиной, она в настоящее время не имеет права на запрос (с помощью JavaScript) на другой сервер, чем одну порцию сценария

+0

Да, удаленный сервер, и мы пытаемся использовать JSONP для этого. – Antti

0

Чтобы получить тестовая функция работала, попробуйте изменить callback=?

+0

А, у меня ошибка по моему вопросу. Ответ JSON - это когда я использую callback = ?. Если у меня есть callback = voimakaksikkoStats, тогда ответ пуст. – Antti

0

Если ваш запрос отправлен в домен anonther, попробуйте использовать метод jsonP. Поиск JSONP документы

+0

Да, это то, что мы пытаемся сделать. Хотя heiaheia erver всегда возвращает voimakaksikkoStats - и не динамически данную callback-функцию. Это вызывает проблемы? – 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> 

В этом примере используется Prototype.js создать список с некоторыми данными из данных статистики, а затем помещает этот список в нижней части документа тела.

+0

Да, я понял это прямо перед этим, но это, несомненно, помогло бы мне! – Antti