JS, Преобразование строки в многомерный массив:)

BETEP

Новичок
JS, Преобразование строки в многомерный массив:)

Есть страница, к ней при действиях пользователя подгружаю AJAX`ом данные из файлов, дк вот в чем вопрос. Приходит мне естественно строковое значение. Значение предположим 1,2,3,4. Дк вот, что мне сделать чтобы это значение стало многомерным массивом. п.с. На самом деле, значение на много более глубокое, пример - [['test 1', 15000], ['test 2', 20000], ['test 3', 25000]], посему жаваскриптовым эксплодом не обойтись.
 

Фанат

oncle terrible
Команда форума
Тот случай, когда нужен именно AJAX. С буквой Х на конце.
чтобы не заниматься изобретением велосипедов.
Если же так хочется самодельный формат, то пиши к нему парсер самостоятельно.
или измени формат так, чтобы его парсинг у тебя же самого не вызывал затруднений.
 

phprus

Moderator
Команда форума
BETEP
Используй формат JSON (http://ru.wikipedia.org/wiki/JSON) его можно парсить обычным eval'ом.

P.S. Помоему и твой формат должен обрабатываться JavaScript'овым eval'ом.
 

BETEP

Новичок
Автор оригинала: *****
Тот случай, когда нужен именно AJAX. С буквой Х на конце.
чтобы не заниматься изобретением велосипедов.
Если же так хочется самодельный формат, то пиши к нему парсер самостоятельно.
или измени формат так, чтобы его парсинг у тебя же самого не вызывал затруднений.
Ничего не понял если честно. Формат данных я могу без проблем изменить.

А как JSON парсить то этим aval`ом, почитал доков и примеров - ничего не ястно.
 

fixxxer

К.О.
Партнер клуба
напишу разок, чтобы ссылаться потом ;)

PHP:
$result = array(
  'foo' => 'value of foo',
  'bar' => 'value of bar',
);
header('Content-type: text/javascript');
echo json_encode($result);
-------------------------

PHP:
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
new Ajax.Request('/my_1st_webservice.php', { method:'get',
    onSuccess: function(transport) {
        var r;
        eval('r='+transport.responseText);
        $('foo').innerHTML = r.foo;
        $('bar').innerHTML = r.bar;
     }
});
</script>
<body>
<div id="foo"></div>
<hr>
<div id='bar"></div>
</body>
p.s. на самом деле в prototype.js ручками это делать и не нужно - это для понимания :)
 

fixxxer

К.О.
Партнер клуба
ага, согласен... просто в моей записи понятнее происходящее ;)

по хорошему вообще через апдейтеры такое делается
 

BETEP

Новичок
Пасиб, получилось еще дня два позавчера, собственно ejal`ом. правда json_encode не использовал - сам сформатировал.
 

sanches.free

Новичок
эх... BETEP, ну зачем вот велосипеды придумывать, чтоб какой нить программист после тебя проект переделывая матерился ? Стандарты придуманы не для того что бы их нарушать, это вам не реальный мир! тут все по другому ;)
 

Scud

Новичок
Вот когда дорастёшь до 4-х сообщений на форуме как у Ветра, тогда поймёшь весь глубинный смысл его поступка ;)
 
Сверху