Расшифровать объект JSON

0

Привет, вот мой ответ json от ajax call:

[{"id":null,"period":null,"until":null,"agent_id":"15","agent_zlecajacy_id":"15","offer_id":null,"status":"1","tytul":"Pobranie ksi\u0105g","tresc":"Pobranie ksi\u0105g","data_aktualizacji":"2013-10-21","data_kontaktu":"2013-10-08 22:00:00","data_kontaktu_end":"0000-00-00 00:00:00","czas_minuty":"30","created":"2013-10-21","type":"todo","series":null,"offers":"","details":"","parent_id":"0","assignment":null,"color":null,"asigned_users":null,"e_type":null,"show":null}]

Как получить, например, статус "1", я попробовал $.parseJSON (результат), но

SyntaxError: JSON.parse: unexpected character

может быть, потому что есть нуль?

здесь больше кода

url: "/schedule/getDetails/?id="+event_id,
        dataType: 'json',
        async: false,
        success : function(json) {
            result = json.result;
                        console.log($.parseJSON(result));

и php (zend)

$result = $model->getDetails($id);
            $this->sendJSON($result);
  • 7
    Ваш ответ выглядит как объект javascript, а не как строка. $.parseJSON принимает строковый аргумент. Я говорю, что вам не нужно разбирать ... просто читать с объекта. Попробуйте оповестить о result[0].status
  • 1
    Вы уверены, что это ценность result ? Я только что попробовал JSON.parse(<the JSON you posted>) и он отлично работает.
Показать ещё 2 комментария
Теги:

2 ответа

0
Лучший ответ

Ваш ответ json - это не что иное, как объект внутри массива с одним элементом. Таким образом, вы можете получить доступ к атрибуту, который вы хотите:

your_response[0].attribute_name

Например, следующий код будет извлекать ваш agent_id:

myVar= [{"id":null,"period":null,"until":null,"agent_id":"15","agent_zlecajacy_id":"15","offer_id":null,"status":"1","tytul":"Pobranie ksi\u0105g","tresc":"Pobranie ksi\u0105g","data_aktualizacji":"2013-10-21","data_kontaktu":"2013-10-08 22:00:00","data_kontaktu_end":"0000-00-00 00:00:00","czas_minuty":"30","created":"2013-10-21","type":"todo","series":null,"offers":"","details":"","parent_id":"0","assignment":null,"color":null,"asigned_users":null,"e_type":null,"show":null}]

alert(myVar[0].agent_id])
1

Вам следует

var a = [{"id":null,"period":null,"until":null,"agent_id":"15","agent_zlecajacy_id":"15","offer_id":null,"status":"1","tytul":"Pobranie ksi\u0105g","tresc":"Pobranie ksi\u0105g","data_aktualizacji":"2013-10-21","data_kontaktu":"2013-10-08 22:00:00","data_kontaktu_end":"0000-00-00 00:00:00","czas_minuty":"30","created":"2013-10-21","type":"todo","series":null,"offers":"","details":"","parent_id":"0","assignment":null,"color":null,"asigned_users":null,"e_type":null,"show":null}];

console.log(a[0]);

DEMO

Изображение 174551

После этого вы можете получить доступ к элементам, подобным ниже

console.log(a[0].id);
console.log(a[0].period);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню