遇到这个问题真是难为死我了,后来问个一个大神,一下就是大神告诉我的
//直接传数组就变成了“list1[0][aa]=1&list1[0][bb]=2&list1[1][aa]=3&list1[1][bb]=4&list2[0][aa]=1&list2[0][bb]=2&list2[1][aa]=3&list2[1][bb]=4“,解决这个问题有两种方法
方法一 :用$.params(data,true);因为使用ajax请求数据时后台会在参数名后面加上[1],导致参数名和后台的不一样,所以
传数组时加上$.params(data,true)
方法二 : 使用traditional为true,防止深度序列化,traditional默认为false,即
traditional:true
$.ajax({
type: "POST",
url: url,
traditional:true,//这句话必须
data:{ gender:[0,1] },
dataType: "json",
async:false
});