gpt4 book ai didi

c# - 为 ASP.Net MVC Ajax 请求从服务器重定向到新页面

转载 作者:行者123 更新时间:2023-11-30 14:48:42 24 4
gpt4 key购买 nike

我正在尝试使用 RedirectToAction() 从另一个 Controller 调用方法。但它不起作用。你能解释一下我做错了什么吗?

[HttpPost]
public ActionResult AddToWishList(int id, bool check)
{
var currentUser = WebSecurity.CurrentUserId;
if (currentUser != -1)
{
// ...
}
else
{
return RedirectToAction("Login", "Account");
}
}

我在 HTML 中调用方法:

<script>
$(document).ready(function () {
/* call the method in case the user selects a checkbox */
$("#checkbox".concat(@Model.Id)).change(function () {
$.ajax({
url: '@Url.Action("AddToWishList", "Item")',
type: 'POST',
data: {
id: '@Model.Id',
check: this.checked
}
});
});
});

如果我使用它会起作用:

success: function (result) {
window.location.href = "@Url.Content("~/Account/Login")";
}

但我不需要在每次点击后导航到 Login(),除非用户未获得授权。您能否解释一下我如何在 Controller 中使用重定向?

最佳答案

您可以回复 JavaScript 基本上返回 JavaScriptResult

[HttpPost]
public ActionResult AddToWishList(int id, bool check)
{
return JavaScript("window.location='/Account/Login'");
}

关于c# - 为 ASP.Net MVC Ajax 请求从服务器重定向到新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40851111/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com