Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Запутался с объектами и массивами (https://javascript.ru/forum/misc/13473-zaputalsya-s-obektami-i-massivami.html)

OEMOEM 30.11.2010 08:22

Запутался с объектами и массивами
 
Работаю с ajax с jquery, из php файла передаю массив в data.data.

Когда смотрю в Firebug, то вижу что data.data это объект из:

1:'a'
2:'b'
3:'c'

По задумке мне надо перебрать массив, который находится в дата, но там вроде не массив.

Помогите решить проблему.

OEMOEM 30.11.2010 08:26

Вот ответ, который отдает ajax

{
"message": "",
"complete": true,
"data": {"24" : "Адамовское", "25" : "Баянгольское", "26" : "Сувинское", "27" : "Улюнское", "28" : "Уринское", "29" : "Хилганайское", "30" : "Юбилейное", "31" : "Поселок Усть-Баргузин", "32" : "Баргузинское", "33" : "Читканское"}
}

Kolyaj 30.11.2010 08:29

Ну вы вроде сами видите, что data.data не массив. А какой массив вы там хотите увидеть? Сначала 24 пустых элемента, а потом пошли тексты?

dmitriymar 30.11.2010 08:29

Это всё название портвейнов?:dance:

OEMOEM 30.11.2010 08:33

Сделал в PHP так

$pos = array();

foreach ($poselenie as $v)
{
$pos[$v['id']] = $v['title'];
}
$ajax->data['pos'] = $pos;

Теперь в javascript data.data['pos'] почему то просто array, а элементов внутри нету

рони 30.11.2010 10:02

OEMOEM,
<script language="JavaScript" type="text/javascript">
var data= {
"message": "",
"complete": true,
"data": {"24" : "Адамовское", "25" : "Баянгольское", "26" : "Сувинское", "27" : "Улюнское", "28" : "Уринское", "29" : "Хилганайское", "30" : "Юбилейное", "31" : "Поселок Усть-Баргузин", "32" : "Баргузинское", "33" : "Читканское"}
}
for(var k in data.data)document.write(k + ":"  + data.data[k] + "<br />")
</script>

OEMOEM 30.11.2010 10:06

ОООО

Огромное спасибо, очень помогли


Часовой пояс GMT +3, время: 12:13.