web-dev-qa-db-ja.com

$ .ajax()でajaxリクエストに配列を渡す

可能な重複:
jQueryでJSONにシリアライズする

配列をAjaxリクエストとして送信したいです。

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

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

これどうやってするの?

183
Poonam Bhatt
info = [];
info[0] = 'hi';
info[1] = 'hello';


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

次のように、JSON.stringifyメソッドを使用して$ .ajax関数の "data"パラメータとして渡すだけです。

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

あなたのページにJSON2.jsファイルを確実に含める必要があります。

63
FarligOpptreden

_ note _ :jQueryの新しいバージョンでは動作しません。

JQueryを使っているので、データをシリアライズしてそれをajax呼び出しのdataパラメーターに渡すためにseralize関数を使ってください。

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);
    }
});
7
BlackDivine