【发布时间】:2018-05-09 12:45:16
【问题描述】:
我在 asp.net core 2.0 中进行了一个非常简单的 ajax() 方法 调用。它只是从视图中调用控制器函数。它还使用 data 参数传递值。
正在调用 C# 函数,但 控制器函数参数 未接收值。
代码:
var idChecked = 5;
$.ajax({
type: "POST",
url: "/BlogCategory/UpdateBulkStatus",
contentType: "application/json; charset=utf-8",
data: '{"idChecked":"' + idChecked + '"}',
dataType: "html",
success: function (msg) {
},
error: function (req, status, error) {
}
});
控制器功能
public string UpdateBulkStatus(string idChecked)
{
return "abc";
}
idChecked 变量始终为空。
怎么了?相同的代码适用于 MVC 5,但不适用于核心?
【问题讨论】:
-
只需使用
data: { idChecked: idChecked },并删除contentType: "application/json; charset=utf-8",并且由于您传递的是int,因此您的参数应该是int,而不是string。 -
谢谢@StephenMuecke。我更改了数据 data: { idChecked: idChecked } 并删除了 contentType ,就像你说的那样。它现在起作用了。它以前在 MVC 5 上工作,但在核心 2.0 上停止工作。
标签: jquery asp.net ajax asp.net-mvc asp.net-core-mvc