我不确定为什么会这样.我有一个字符串数组应该发送到期望字符串数组的控制器操作.这是我的jQuery:
$.post("/@Model.Controller/@Model.Action",{ "choices": ajax },function (result) {
$("#label" + "@Model.Id").html(result);
});
这是我的控制器动作:
public JsonResult UpdateMultipleType(string[] choices)
{
return Json(choices);
}
Parametersapplication/x-www-form-urlencoded
choices[] Comedy
choices[] Thriller
choices[] Action
choices[] Adventure
我已经调试并确认它正在命中UpdateMultipleType,并且在调用该操作时字符串数组“choices”为null.调用会通过,但由于我们返回null,因此在调用完成后出现Javascript错误.
我不知道为什么我的控制器动作被发送为null,因为很明显有一个叫做选择的数组被发送过来.
最佳答案
你需要告诉jQuery使用传统的构建ajax数据的方式.
原文链接:https://www.f2er.com/jquery/428808.html把它放在你的文件中:
jQuery.ajaxSettings.traditional = true;