Передача массивов из 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, время: 12:48. |