Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.07.2013, 07:31
Интересующийся
Отправить личное сообщение для SergeyMiracle Посмотреть профиль Найти все сообщения от SergeyMiracle
 
Регистрация: 16.05.2013
Сообщений: 18

Json ответ, работа с data
Всем привет, чет сижу и не могу понять как с datой аджакса работать, приходит ответ - [{"id":"1","title":"\u0422\u0430\u0439\u043c\u0435\ u0440 \u043e\u0434\u0438\u043d","time":"40","update":"20 13-07-03 03:31:21"}], alert(data) все показывает... но надо отдельный элемент, data.time результатов не дает... что-то надо делать с этим json ответом?

$.ajax({
                url: '/page/gettimer/',
                data: {id: 1},
                dataType: "json"
                }).done(function(data) { currentTime = data.time * 100;  Example2.Timer.play();  alert(data.time)});
Ответить с цитированием
  #2 (permalink)  
Старый 03.07.2013, 08:25
Интересующийся
Отправить личное сообщение для SergeyMiracle Посмотреть профиль Найти все сообщения от SergeyMiracle
 
Регистрация: 16.05.2013
Сообщений: 18

undefined - все что я получаю пытаясь сделать alert(data.time)
Ответить с цитированием
  #3 (permalink)  
Старый 03.07.2013, 11:10
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от SergeyMiracle
undefined - все что я получаю пытаясь сделать alert(data.time)
а так ?
alert(data[0].time)
Ответить с цитированием
  #4 (permalink)  
Старый 03.07.2013, 15:58
Интересующийся
Отправить личное сообщение для SergeyMiracle Посмотреть профиль Найти все сообщения от SergeyMiracle
 
Регистрация: 16.05.2013
Сообщений: 18

Аналогично пишет undefined. Что-то ума не приложу...PHP функция
public function get_timer()
	{
		$id = $this->input->get('id');
		$query = $this->db->get_where('timer', array('id' => $id));
		echo json_encode($query->result());
	}

Ответ выдает -
[{"id":"1","title":"\u0422\u0430\u0439\u043c\u0435\u0440 \u043e\u0434\u0438\u043d","time":"100","update":"2013-07-03 03:31:21"}]

и все, понимает только такое data.slice(), но это же не дело
Ответить с цитированием
  #5 (permalink)  
Старый 03.07.2013, 17:26
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

так может тип string,?
alert(typeof(data))
alert(JSON.parse(data)[0].time)

Последний раз редактировалось vadim5june, 03.07.2013 в 17:29.
Ответить с цитированием
  #6 (permalink)  
Старый 03.07.2013, 17:30
Интересующийся
Отправить личное сообщение для SergeyMiracle Посмотреть профиль Найти все сообщения от SergeyMiracle
 
Регистрация: 16.05.2013
Сообщений: 18

Вы правы
Ответить с цитированием
  #7 (permalink)  
Старый 03.07.2013, 17:31
Интересующийся
Отправить личное сообщение для SergeyMiracle Посмотреть профиль Найти все сообщения от SergeyMiracle
 
Регистрация: 16.05.2013
Сообщений: 18

alert(JSON.parse(data)[0].time) - делает свое дело... спасибо наставили неразумного
Ответить с цитированием
  #8 (permalink)  
Старый 03.07.2013, 19:29
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от SergeyMiracle
alert(JSON.parse(data)[0].time) - делает свое дело... спасибо наставили неразумного
Очень странно. Ибо достаточно указать dataType: 'json' и jQuery автоматически распарсит ответ как JSON.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с JSON TSEH25 ExtJS 4 18.01.2014 04:17
Работа с json mrozk Общие вопросы Javascript 3 03.08.2012 01:00
IE не распознает ответ от сервера в формате JSON DIMANSIM Internet Explorer 0 26.11.2011 22:08
Разная работа скрипта с JSON на разных хостингах Rokugan Общие вопросы Javascript 1 03.10.2011 13:16
Ajax - JSON - не распознает пришедший ответ Майский Кот jQuery 1 14.05.2009 00:40