之前都是用ajax来进行简单key/value来传值的,后来用来传对象一下子懵了,然后按照之前的写法
var data = [
{ name: '小明', id: 1 },
{ name: '小红', id: 2 }
]
$.post("url", data, function (message)
{
console.log(message)
});
结果在谷歌控制台那边显示我传过去的form data为undifind,因为这个post方法只能对data进行一些简单的数据转化为json
解决方案为
$.ajax({
type: "post",
url: "url",
//默认是application/x-www-form-urlencoded,后台只接受json格式,必须写!
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),//变成json字符串
dataType: "json",
success: function (message)
{
console.log(message)
}
});
post时,后台只接收为json格式的数据,所以contentType得设置为"application/json; charset=utf-8"