Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Применение библиотек > $.post передать массив


Автор: Vovan222 8.6.2011, 17:34
У меня есть такой массив:
Код

var arr = [45,98,78,36];

Можно ли его передать AJAX запросом с помощью $.post ?
Если сделать так:
Код

$.post('/ajaxurl',{arr:arr},
            function(data){
                
            },
            'json'
        );

то через пост передается следующее:
Код

arr : 45
arr : 98
arr : 78
arr : 36 

Соответственно в $_POST['arr'] приходит только последнее значение 36

Автор: нуп 8.6.2011, 17:49
Код

$.post('/ajaxurl',{'arr[]':arr},
            function(data){
                
            },
            'json'
        );

Автор: Vovan222 8.6.2011, 17:59
нуп, Спасибо Вам большое! А Вы не знаете как в JS можно сереализовать массив в строку? 

Автор: нуп 8.6.2011, 18:06
Код

var str = $.param({ arr : arr});

Автор: Vovan222 23.6.2011, 13:20
Ребята помогите пожалуйста, когда отправляю массив так:
Код

$.post('/ajaxurl',{'arr[]':arr},
            function(data){
                
            },
            'json'
        );

То оправляется массив arr[] не более 199 элементов. Никаких ошибок нет, просто передается только 199 элементов.
P.S: post_max_size: 180M

Автор: mark2011 7.7.2011, 22:00
Vovan222, 
Немного не понял связи параметра post_max_size и количества элементов в массиве... post_max_size отвечает за объём переданной информации в  $_POST за один запрос и измеряется в мегабайтах. Увеличить можно стандартными средствами, только зачем оно вам?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)