【问题标题】:Action method won't redirect via jQuery.post in .net-core-mvc app操作方法不会通过 .net-core-mvc 应用程序中的 jQuery.post 重定向
【发布时间】:2017-06-08 05:12:27
【问题描述】:
$.post({
    url: '@Url.Action("Create", "MyController")',
    data: { myVar: myVal }
})

在 Controller Action 方法中,我正在调试通过 jQuery 方法发布的参数值,我知道正在调用该方法并传递了正确的数据,但 RedirectToAction("Index");语句没有加载我的其他视图页面。

调试控制台向我显示了对 url localhost:xxxxx/MyController/Index 的成功获取请求。但是,get 请求不会反映在浏览器开发者网络窗口中。

【问题讨论】:

  • $.post 是一个异步调用,RedirectToAction 将不起作用,而是返回一个 url 进行重定向并使用成功回调方法来做必要的事情。或提交表格
  • 什么方法有效?这是否意味着我应该将 async Task 用于操作方法?
  • 我什至尝试在 .post 调用的 .done() 函数中调用 $.get 。浏览器开发者网络选项卡显示成功的获取请求,但它没有加载 URL

标签: jquery asp.net-core-mvc


【解决方案1】:

您不能这样做,因为您的 ajax 后调用期望返回而不是重定向到操作尝试类似传递 true 而不是重定向和在 ajax 成功函数中的方法

success:function(data)
{
    if(data)
    {
        var url = '@url.action("yourACtion","yourController")';
        window.location.href = url;
     }
}

【讨论】:

    猜你喜欢
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-25
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多