|
Получение JSON
Пытаясь получить данные из JSON:
$("#head").click(function(){ $.getJSON("json.js", function(json){ alert("JSON Data: " + json); }); }); в файле: ["жо",["жорж санд","жорж","жо","жозе моуринью","жорик вартанов","жостово","жозе моуриньо","жожоба","жокей","ж вта газета"]] Но ничего не получается, что не так? |
alert("JSON Data: " + json); json - это объект. Нужно указывать, какой именно элемент объекта вывести. К примеру, json.element1 |
Прсто для проверки оставил так:
$("#head").click(function(){ $.getJSON("json.js", function(json){ alert("JSON Data: "); }); }); При клике ничего не появляется. |
Что в данном коде не так, писал по мануалу?
Нашёл вот что: когда в качестве callback стоит функция function(data) {} она не отрабатывает, а когда просто alert(""), то всё нормально. |
Возможно (а даже скорее всего), формат возвращаемых данных неправильный. У формата JSON есть определенные требования.
|
Проверял валидатором, всё отлично, данные выдаёт гуголь- он то не ошибается.
|
А если использовать не getJSON, а, скажем, просто ajax? Тогда результат имеется?
|
Вообще не работает...
Вот код: $("#head").click(function(){ $.ajax({ url: "json.js", dataType : "json", success: function (data) { alert("tfdf")//data.geo.lat); } }); }); Файл находится в той же папке, в нём: {"geo":{"lat":"123","lon":"321"}} |
Воспользуйтесь callback функцией error, может она скажет вам в чем ошибка:
error: function(jqXHR, textStatus, errorThrown) { alert(textStatus); } И вообще, а почему вы к JS файлу обращаетесь ? вы должны к скрипту который обрабатывается серверным языком (PHP к примеру). В этом и ошибка по моему. |
Ну это просто файл с текстом, думаю расширение неважно, да и сервер на запрос отдаёт именно text/javascript
error сейчас попробую. Вроде нашёл причину ошибки и устранил, кажется проблемы с синтаксисом. Теперь осталось обмануть гуголь и заставить отдать его мне результаты запроса, так как судя по фаербагу гуголь отдаёт пустой файл на запрос. Странно, любому браузеру на http://clients1.google.ru/complete/s...era&q=%E0&cp=1 отдаёт JSON, а скрипту нет... Кстати, если в JSON объекте находится массив ["а",["анекдоты","авито","аэрофлот","авто ру","афиша","авто","афоризмы","авианова","альфа банк","акинатор"]] как получить из него ["анекдоты","авито","аэрофлот","авто ру","афиша","авто","афоризмы","авианова","альфа банк","акинатор"] ? |
Часовой пояс GMT +3, время: 21:36. |
|