今天遇到一个问题,在js中使用ajax提交一个json数组,希望Controller中action的可以直接接收到此数组,ajax写法与普通的写法有少许不同,记录如下

前台js:

//定义一个json数组
var idsArr=new Array();
idsArr.push(1);
idsArr.push(2);
idsArr.push(3);

//ajax方法
$.ajax({
url: "/Home/UpdateByIds",
type: "post",
traditional: true,//布尔值,规定是否使用参数序列化的传统样式,这样后台数组变量才能接受到值
data: {ids: idsArr},
dataType: "json",
success: function (data) {
}
});

需要注意的是 traditional: true

action设置参数:int[] ids

public ActionResult UpdateByIds(int[] ids)  
{}