发送到后端二维数组

我想使用ajax从脚本向控制器发送二维数组:

这是我的脚本代码:

var regions = [["en", "fr"], ["ru"]]; $.ajax({ type: "POST", traditional: true, url: $(this).attr("action"), data: { regions: regions }, success: function(data) { $('#alertMessage').html(data); } }); 

这是我的控制器:

 [HttpPost] public ActionResult SaveSettings(List<List> regions) {} 

参数“regions”包含Null值。

我将不胜感激任何将在控制器中提供数据的方法(欢迎任何格式:array,json)

我希望得到你的帮助。

最诚挚的问候,帕维尔

您需要更改操作方法的签名以使用string[][] ,如下所示:

 [HttpPost] public ActionResult SaveSettings(string[][] regions) { } 

然后在你的脚本中你可以stringify()你的JSON,如下所示:

 var regions = [["en", "fr"], ["ru"]]; $.ajax({ type: "POST", traditional: true, contentType: "application/json; charset=UTF-8", url: $(this).attr("action"), data: { JSON.stringify({ regions: regions }) }, success: function(data) { $('#alertMessage').html(data); } }); 

注意:这需要包含JSON.js。