Передайте массив в ajax-запрос в $.ajax()

Возможный дубликат:
Сериализация JSON в jQuery

Я хочу отправить массив как запрос Ajax:

info[0] = 'hi';
info[1] = 'hello';

$.ajax({
  type: "POST",
  url: "index.php",
  success: function(msg){
    $('.answer').html(msg);
  }
});

Как я могу это сделать?

Ответ 1

info = [];
info[0] = 'hi';
info[1] = 'hello';


$.ajax({
   type: "POST",
   data: {info:info},
   url: "index.php",
   success: function(msg){
     $('.answer').html(msg);
   }
});

Ответ 2

Просто используйте метод JSON.stringify и передайте его как параметр "data" для функции $.ajax, например:

$.ajax({
    type: "POST",
    url: "index.php",
    dataType: "json",
    data: JSON.stringify({ paramName: info }),
    success: function(msg){
        $('.answer').html(msg);
    }
});

Вам просто нужно убедиться, что вы включили файл JSON2.js на свою страницу...

Ответ 3

Поскольку вы используете jQuery, используйте функцию seralize для сериализации данных, а затем передайте его в параметр данных для вызова ajax:

info[0] = 'hi';
info[1] = 'hello';

var data_to_send = $.serialize(info);

$.ajax({
            type: "POST",
            url: "index.php",
            data: data_to_send,
            success: function(msg){
                $('.answer').html(msg);
            }
        });