Подтвердить что ты не робот

Как передать массив Javascript через JQuery Post, чтобы все его содержимое было доступно через массив PHP $_POST?

Как передать массив Javascript через JQuery Post, чтобы все его содержимое было доступно через массив PHP $_POST?

Пожалуйста, покажите пример кода, который бы сделал трюк.

Спасибо!

4b9b3361

Ответ 1

Если вы хотите передать объект JavaScript/хэш (т.е. ассоциативный массив в PHP), вы должны:

$.post('/url/to/page', {'key1': 'value', 'key2': 'value'});

Если вы хотите передать фактический массив (т.е. индексированный массив в PHP), то вы можете сделать:

$.post('/url/to/page', {'someKeyName': ['value','value']});

Если вы хотите передать массив JavaScript, вы можете сделать:

$.post('/url/to/page', {'someKeyName': variableName});

Ответ 2

Это довольно просто. В вашем JS все, что вы сделали бы, это или что-то подобное:

var array = ["thing1", "thing2", "thing3"];

var parameters = {
  "array1[]": array,
  ...
};

$.post(
  'your/page.php',
  parameters
)
.done(function(data, statusText) {
    // This block is optional, fires when the ajax call is complete
});

На вашей php-странице значения в форме массива будут доступны через $_POST['array1'].

ссылка

Ответ 3

Вот пример:

$.post("test.php", { 'choices[]': ["Jon", "Susan"] });

Надеюсь, что это поможет.

Ответ 4

Я думаю, что мы должны отправить этот формат

var array = [1, 2, 3, 4, 5];
$.post('/controller/MyAction', $.param({ data: array }, true), function(data) {});

Его уже упоминалось в Передача массива в действие mvc через AJAX

Это сработало для меня