发送到后端二维数组 [英] Send to back-end two-dimensional array
本文介绍了发送到后端二维数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用ajax从脚本向控制器发送二维数组:
I want to send two-dimensional array to controller from a script using 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<string>> regions)
{}
参数"regions"包含一个Null值.
The parameter "regions" contains a Null value.
我希望能在控制器中提供数据的任何方法(欢迎使用任何格式:数组,json)
I would appreciate any method that will give the data in the controller (welcome any format: array, json)
希望您能帮上忙.
最好的问候, 帕维尔
推荐答案
您需要更改操作方法的签名以使用string[][]
,如下所示:
You need to change your action method's signature to use a string[][]
, like this:
[HttpPost]
public ActionResult SaveSettings(string[][] regions)
{
}
然后在脚本中可以stringify()
JSON,如下所示:
Then in your script you can stringify()
your JSON, like this:
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 .
这篇关于发送到后端二维数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文