【发布时间】:2020-12-09 12:22:20
【问题描述】:
我在 Javascript 函数中有一个变量,我想将其发送到控制器以激活指定的方法。
这是视图中 javascript 函数的代码:
var email = response.email; //String with an email address
$.ajax({
type: "POST",
url: '@Url.Action("Login", "UsersController")',
dataType: "html",
data: { data: email },
success: function (data) {
alert('Your data updated');
return data;
},
error: function (jqXHR, textStatus) {
alert(textStatus);
}
});
这是我想在Controller中激活的方法:
[HttpPost]
public IActionResult Login(string email)
{
var user = _context.User.FirstOrDefault(u => u.Email == email);
if (user != null)
{
SignIn(user);
return RedirectToAction("Index", "Home");
}
return View("Login", "Users");
}
每次我运行它时都会收到错误警报,我对 Ajax 还很陌生,所以我不知道如何处理它。 谢谢。
【问题讨论】:
-
您遇到的错误是什么?
-
给
Users而不是UsersController。并且 dataType 不是HTML删除它,并更新 URL tpurl: '/Users/Login'以获取更多信息,请参阅此 api.jquery.com/jquery.post/#entry-longdesc
标签: javascript c# ajax asp.net-core model-view-controller