Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.10.2011, 16:59
Новичок на форуме
Отправить личное сообщение для spahi4 Посмотреть профиль Найти все сообщения от spahi4
 
Регистрация: 31.10.2011
Сообщений: 7

Вопрос по json
Вот начал осваивать jquery. Столкнулся с проблемой:
Неработает код.
Надо получить данные из json. Вот они:
{"auth":1,"voiced":1,"voice":"1","like":"1","dislike":"0"}


А вот код:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
 $.getJSON("http://site.ru/like_result.php?siteid=0&url="+window.location.path,function(data){
 $("#l").html("Лайков: "+data.like+", дислайков: "+data.dislike");
 });
 </script>


 <div id='l'></div>


Где ошибка?
Ответить с цитированием
  #2 (permalink)  
Старый 31.10.2011, 18:29
Аспирант
Отправить личное сообщение для Black_Prince Посмотреть профиль Найти все сообщения от Black_Prince
 
Регистрация: 11.07.2011
Сообщений: 64

1. {"auth":"1","voiced":"1","voice":"1","like":"1","d islike":"0"} - все значения и ключи в кавычки поместите (ну это так, на всякий случай)

2. проверьте точно урл: "http://site.ru/like_result.php?siteid=0&url="+window.location.pat h - точно ли он вам возвращает именно тот json.

3. проверьте точно наличие элемента: $("#l")

4. возможно дата приходит все таки просто строкой - тогда преобразуйте ее в json формат: jQuery.parseJSON( data )
Ответить с цитированием
  #3 (permalink)  
Старый 31.10.2011, 19:19
Новичок на форуме
Отправить личное сообщение для spahi4 Посмотреть профиль Найти все сообщения от spahi4
 
Регистрация: 31.10.2011
Сообщений: 7

Вот html код, по-прежнему нерабочий:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html><head>

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>

<script type=text/javascript>
$(document).ready(function(){
 $.getJSON("http://site.ru/like_result.php?siteid=0&url="+window.location.path,function(data){
 var json = $.parseJSON(data);
 $("#l").html("Лайков: "+json.like+", дислайков: "+json.dislike);
});
});
</script>
 <p id='l'></p>
</html>

Последний раз редактировалось spahi4, 31.10.2011 в 19:37.
Ответить с цитированием
  #4 (permalink)  
Старый 01.11.2011, 04:49
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Причина проста: браузер запрещает брать данные с другого домена. Прочтите эту статью: http://javascript.ru/ajax/cross-domain-scripting
Но там не описан JSONP (только вскользь упомянутый транспорт через script), поищите эту информацию сами.
Ответить с цитированием
  #5 (permalink)  
Старый 01.11.2011, 12:08
Новичок на форуме
Отправить личное сообщение для spahi4 Посмотреть профиль Найти все сообщения от spahi4
 
Регистрация: 31.10.2011
Сообщений: 7

Так домен-то один и тот же
Ответить с цитированием
  #6 (permalink)  
Старый 01.11.2011, 12:15
Новичок на форуме
Отправить личное сообщение для spahi4 Посмотреть профиль Найти все сообщения от spahi4
 
Регистрация: 31.10.2011
Сообщений: 7

В консоли пишет невозможно конвертировать var json о объект
Ответить с цитированием
  #7 (permalink)  
Старый 01.11.2011, 23:05
Новичок на форуме
Отправить личное сообщение для spahi4 Посмотреть профиль Найти все сообщения от spahi4
 
Регистрация: 31.10.2011
Сообщений: 7

Вроде разобрался. Можете подсказать материал по JSONP или другим способам кроссдоменного аякса?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ajax $.post вместо json проблема данные не приходят Sadist_dead AJAX и COMET 2 12.07.2012 17:59
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
передача JSON на сервер mikeles AJAX и COMET 0 04.03.2011 11:28
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10
вопрос по jSon + Ajax Beck Events/DOM/Window 47 07.10.2009 15:52