Как передать массив Javascript через JQuery Post, чтобы все его содержимое было доступно через массив PHP $_POST?
Как передать массив Javascript через JQuery Post, чтобы все его содержимое было доступно через массив PHP $_POST?
Пожалуйста, покажите пример кода, который бы сделал трюк.
Спасибо!
Ответы
Ответ 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
Это сработало для меня