Передача массивов из php в js
Всем доброго времени суток. Подскажите пожалуйста как передать несколько массивов из php файла в js
Один массив я смог передать следующим образом. К примеру файл cartnetshop.php $strings = array('blabla', 'bebebe', 'hahaha'); echo json_encode( $strings ); в js $('.button').keyup(function(){ $.post('/cartnetshop.php',, function(data) { var result = jQuery.parseJSON( data ); $('.zag-oform-zakaz').html(result[0]); } ); }); Все упрощенно сугуббо для примера. Задача объявить два массива к примеру $strings = array('blabla', 'bebebe', 'hahaha'); $numb= array('12', '43', '23'); И получить их в js и бращаться к каждому массиву по имени к примеру $('.block-one').html(strings[0]); $('.block-two').html(numb[0]); Всем заранее огромное спасибо. |
Это не проблемы JS.
json_encode(array($strings, $numb)); |
И при получении называть массивы и их обрабатывать. к примеру
var result = jQuery.parseJSON( data ); var strings = result[0]; var numb = result[1]; $('.zag-oform-zakaz').html(numb[0]); Я правильно понял? Спасибо большое, но есть ли возможность передавать также название массивов? Это не обязательно но для дальнейшего удобства обработки данных. |
Цитата:
|
Все я вас понял. Натолкнули на мысль.
json_encode(array('strings' => $strings, 'numb' => $numb)); и тогда я получу var result = jQuery.parseJSON( data ); var strings = result['strings']; Я ведь правильно все понимаю |
У массивов нет названий ни в РНР, ни в JS. $strings и $numb, это не названия, а переменные под которыми объявлены массивы.
Тут вы правы. Я некоректно выразился. Извиняюсь за свою глупость. |
К сожалению мой код не работает кончоль выдает ошибку
JSON.parse: unexpected character at line 1 column 1 of the JSON data Что я делаю не так? |
Цитата:
Цитата:
|
Странно. Ведь я нечего не менял в файле кроме того что заменил
json_encode(array($strings, $numb)); на json_encode(array('strings' => $strings, 'numb' => $numb)); |
Цитата:
|
Часовой пояс GMT +3, время: 09:33. |