27.04.2009, 23:42
|
Интересующийся
|
|
Регистрация: 27.04.2009
Сообщений: 16
|
|
Нужна помощь с двумерным массивом
Доброго времени суток.
Некоторое время уже бьюсь с jquery, но вот в упор не могу понять как мне парстить двумерный массив полученный в json формате.
ПО сути мне приходит массив сообщений вот в таком формате:
Код:
|
{
mess:{
message:'время','кто сказал','кому скаали','цвет текста','сообщение',
message:'время','кто сказал','кому скаали','цвет текста','сообщение',
message:'время','кто сказал','кому скаали','цвет текста','сообщение',
message:'время','кто сказал','кому скаали','цвет текста','сообщение'
}
} |
сообщений может быть от 0 до 100 за один запрос.
так же у меня кроме jquery подключается яваскрипт с функцией по отрисовке полученных сообщений ShowMessage(data)
на данном этапе скрипт выглядит так:
Код:
|
jQuery(document).ready(function(){
jQuery.getJSON('chat_test.php', {}, function(json){
jQuery('#mes').append(json.messages.message + '<br/>');
});
}); |
соответственно оно не работает :wacko:
в лучшем случае, чего я добивался, это отображения одной строки из всех полученных.
Люди добрый поможите советом, христа ради, ибо заи***ся я уже =)
Заранее прошу прощения если я туплю и решение элементарно и лежит под носом.
Последний раз редактировалось SirNaFigator, 28.04.2009 в 00:12.
|
|
27.04.2009, 23:57
|
|
Рассеянный профессор
|
|
Регистрация: 06.04.2009
Сообщений: 2,379
|
|
json не валидный
{
mess:{
message1:['время','кто сказал','кому скаали','цвет текста','сообщение'],
message2:['время','кто сказал','кому скаали','цвет текста','сообщение'],
message3:['время','кто сказал','кому скаали','цвет текста','сообщение'],
message4:['время','кто сказал','кому скаали','цвет текста','сообщение']
}
}
Последний раз редактировалось Riim, 28.04.2009 в 00:01.
|
|
28.04.2009, 00:00
|
Интересующийся
|
|
Регистрация: 27.04.2009
Сообщений: 16
|
|
хммм, точно!!!
А по функции обработки?
|
|
28.04.2009, 00:03
|
|
Рассеянный профессор
|
|
Регистрация: 06.04.2009
Сообщений: 2,379
|
|
Я кроме названия этой функции (ShowMessage) саму ее не вижу.
|
|
28.04.2009, 00:10
|
Интересующийся
|
|
Регистрация: 27.04.2009
Сообщений: 16
|
|
я имел в виду, каким образов отображать весь массив сообщений, а не только первое.
|
|
28.04.2009, 00:13
|
|
Рассеянный профессор
|
|
Регистрация: 06.04.2009
Сообщений: 2,379
|
|
Сообщение от SirNaFigator
|
я имел в виду, каким образов отображать весь массив сообщений, а не только первое.
|
Не массив у вас, а объект (если вы про json.mess). И ключи в нем одинаковые. Каждый следующий перезаписывает предыдущий. Т. е. у вас один ключ.
|
|
28.04.2009, 00:51
|
Интересующийся
|
|
Регистрация: 27.04.2009
Сообщений: 16
|
|
с учетом исправлений получается следующий ответ сервера:
Код:
|
{
messages:{
mess_312:['время','кто сказал','кому скаали','цвет текста','сообщение'],
mess_542:['время','кто сказал','кому скаали','цвет текста','сообщение'],
mess_9113:['время','кто сказал','кому скаали','цвет текста','сообщение'],
mess_1214:['время','кто сказал','кому скаали','цвет текста','сообщение']
}
} |
Теперь возникает вопрос, как применить функцию ShowMess к каждому члену объекта, если я не знаю его ключ.
|
|
28.04.2009, 01:02
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
|
|
28.04.2009, 01:11
|
Интересующийся
|
|
Регистрация: 27.04.2009
Сообщений: 16
|
|
Господа, огромное спасибо, теперь все работает =)
|
|
28.04.2009, 01:21
|
|
Рассеянный профессор
|
|
Регистрация: 06.04.2009
Сообщений: 2,379
|
|
А я бы json.messages массивом сделал. Трафик меньше и сервер генерацией ключей грузить не надо.
|
|
|
|