将数组传递给$ .ajax()中的ajax请求
可能重复:
在jQuery中序列化为JSON
我想发送一个数组作为Ajax请求:
info[0] = 'hi'; info[1] = 'hello'; $.ajax({ type: "POST", url: "index.php", success: function(msg){ $('.answer').html(msg); } });
我怎样才能做到这一点?
info = []; info[0] = 'hi'; info[1] = 'hello'; $.ajax({ type: "POST", data: {info:info}, url: "index.php", success: function(msg){ $('.answer').html(msg); } });
只需使用JSON.stringify方法,并将其作为$ .ajax函数的“data”parameter passing,如下所示:
$.ajax({ type: "POST", url: "index.php", dataType: "json", data: JSON.stringify({ paramName: info }), success: function(msg){ $('.answer').html(msg); } });
你只需要确保你的页面中包含JSON2.js文件…
既然你正在使用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); } });