X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> javascript Выборка из масcива данных
kvins
kvins
Topic Starter сообщение 7.2.2016, 0:48; Ответить: kvins
Сообщение #1


Завсегдатай
*****


Группа: Active User
Сообщений: 750
Регистрация: 7.9.2011
Из: москва
Поблагодарили: 89 раз
Репутация:   7  


Подскажите как правильно выбирать вложенные данные

Ответ приходит такого формата

result.data()

Где не вложенные поля выбираются так

result.data().LAST_NAME

и все работает

А вот поле телефон вложен во внутренний массив
Вот скрин
http://clip2net.com/clip/m189696/9d043-cli...b.png?nocache=1

По разному пробывал, типа такого result.data().PHONE[0]["VALUE"] но никак не выбирается, да еще и проверка тока через облако, т.е все время нужно скрипт перезагружать, подскажите как правильно делается


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Alexandr_js
Alexandr_js
сообщение 7.2.2016, 0:54; Ответить: Alexandr_js
Сообщение #2


Участник
***

Группа: User
Сообщений: 237
Регистрация: 21.7.2015
Поблагодарили: 43 раза
Репутация:   8  


Цитата(kvins @ 7.2.2016, 0:48) *
По разному пробывал, типа такого result.data().PHONE[0]["VALUE"] но никак не выбирается, да еще и проверка тока через облако, т.е все время нужно скрипт перезагружать, подскажите как правильно делается

Потому что, помимо массива там еще и объект. Т.е Массив - Объект - Значение.

result.data().PHONE[0].VALUE

Сообщение отредактировал Alexandr_js - 7.2.2016, 1:00


--------------------


Поблагодарили: (2)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kvins
kvins
Topic Starter сообщение 7.2.2016, 12:40; Ответить: kvins
Сообщение #3


Завсегдатай
*****


Группа: Active User
Сообщений: 750
Регистрация: 7.9.2011
Из: москва
Поблагодарили: 89 раз
Репутация:   7  


Alexandr_js, такой код не работает, ошибку выдает

_http://clip2net.com/clip/m189696/96215-clip-50kb.png?nocache=1

Uncaught TypeError: Cannot read property '0' of undefined


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Alexandr_js
Alexandr_js
сообщение 7.2.2016, 14:59; Ответить: Alexandr_js
Сообщение #4


Участник
***

Группа: User
Сообщений: 237
Регистрация: 21.7.2015
Поблагодарили: 43 раза
Репутация:   8  


Цитата(kvins @ 7.2.2016, 12:40) *
Uncaught TypeError: Cannot read property '0' of undefined

Скидывайте сюда весь код обработки объекта . Так отгадывать не получится.
Можете заодно и объект сюда скинуть.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kvins
kvins
Topic Starter сообщение 7.2.2016, 15:34; Ответить: kvins
Сообщение #5


Завсегдатай
*****


Группа: Active User
Сообщений: 750
Регистрация: 7.9.2011
Из: москва
Поблагодарили: 89 раз
Репутация:   7  


Alexandr_js, я могу вызов тока скинуть но он не поможет так как данные получаю из облака, а чтобы вы у себя попробывали вам самим нужно зарегиться в приложении.

Полный ответ функции я вроде кидал в первом сообщении нет ?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
roamn
roamn
сообщение 7.2.2016, 17:05; Ответить: roamn
Сообщение #6


Новичок
*

Группа: User
Сообщений: 44
Регистрация: 2.11.2012
Из: Алчевск
Поблагодарили: 9 раз
Репутация:   2  


kvins, сделайте в JS
console.log( result.data() );
после получения данных и покажите скрин.


--------------------
Я на Brainstorage
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kvins
kvins
Topic Starter сообщение 7.2.2016, 17:56; Ответить: kvins
Сообщение #7


Завсегдатай
*****


Группа: Active User
Сообщений: 750
Регистрация: 7.9.2011
Из: москва
Поблагодарили: 89 раз
Репутация:   7  


roamn, я вроде делал это в первом посте, но надо так надо вот

_http://clip2net.com/clip/m189696/51a45-clip-71kb.png?nocache=1


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
roamn
roamn
сообщение 7.2.2016, 19:15; Ответить: roamn
Сообщение #8


Новичок
*

Группа: User
Сообщений: 44
Регистрация: 2.11.2012
Из: Алчевск
Поблагодарили: 9 раз
Репутация:   2  


kvins, должен работать код который вам написали выше.
Как пример - тест локальный http://prntscr.com/a05xew.
После получения данных попробуйте console.log ( result.data().PHONE ) сделать.
Может где-то вы ошибаетесь, так как вам написали result.data().PHONE[0].VALUE, а в итоге получается Uncaught TypeError: Cannot read property '0' of undefined как вы говорите, т.е. массива PHONE - вообще как бы и нет в ответе.

console.log делали в рамках success ответа сервера?
Покажите кусочек кода, который у вас написан в рамках успешного получения ответа от сервера (success).

Сообщение отредактировал roamn - 7.2.2016, 19:19


--------------------
Я на Brainstorage


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 7.2.2016, 19:24; Ответить: x64
Сообщение #9


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3427
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2749 раз
Репутация:   289  


Для кода
Код
var result = {
    data: function () {
        return {
            LAST_NAME: 'чувак',
            PHONE: [{ID:"40374", TYPE_ID:'PHONE', VALUE:' 89088819182'}]
        };
    }
};

Вывод значения телефона можно осуществлять через:
Код
alert(result.data().PHONE[0]['VALUE']);


Для получения всех ключей/значений result.data().PHONE юзаем такое:
Код
alert(typeof result.data().PHONE); // не должно быть undefined! Визуально убедиться, что значение существует
var s = '';
for (var i in result.data().PHONE) s += 'result.data().PHONE[' + i + '] = ' + result.data().PHONE[i] + '\n';
alert(s);

Таким же образом поступаем для result.data().PHONE[0], если всё ок.

Странно, что ошибки выдаёт.


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kvins
kvins
Topic Starter сообщение 7.2.2016, 20:11; Ответить: kvins
Сообщение #10


Завсегдатай
*****


Группа: Active User
Сообщений: 750
Регистрация: 7.9.2011
Из: москва
Поблагодарили: 89 раз
Репутация:   7  


x64,Спс всем кто откликнулся, да тот код работал, просто это была обработка масива, и там был параметр HAS_PHONE по которому надо было сначала проверить на наличия телефона в конкретном лиде.

roamn, щас сравнил с кодом который вы говорили, что выше работает.

Вот с таким кодом работает

result.data().PHONE[0]['VALUE']

т.е VALUE должен быть в скобках, а примере чуть выше вашего сообщения не так.

Как раз из кода x64 я и взял пример, тока у него закрытый VALUE, вот и стал работать

Сообщение отредактировал kvins - 7.2.2016, 20:13


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Веб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
18 qpPeW 3452 12.12.2017, 13:32
автор: qpPeW
Открытая тема (нет новых ответов) Спам в разметке структурированных данных
если на сайте НЕТУ структурированных данных
12 tok24ua 1127 2.12.2017, 1:19
автор: genjnat
Открытая тема (нет новых ответов) Продам базу данных фан пейджей Фейсбук. Общая аудитория 31 млрд. пользователей.
0 Tutich 782 15.10.2017, 16:25
автор: Tutich
Открытая тема (нет новых ответов) Продам базу данных групп Фейсбук. Более 10 000 наименований.
База данных групп Фейсбука
4 Tutich 1468 15.10.2017, 16:11
автор: Tutich
Открытая тема (нет новых ответов) Что нужно сделать с сайтом, чтобы не получить штрафы от Роскомнадзора из-за закона о персональных данных
4 jack 1583 14.10.2017, 1:52
автор: vikosy


 



RSS Текстовая версия Сейчас: 16.12.2017, 17:18
Дизайн