【问题标题】:Javascript send data to ActionResult that return RedirectToActionJavascript 将数据发送到返回 RedirectToAction 的 ActionResult
【发布时间】:2016-10-09 01:17:36
【问题描述】:

我需要将数据从 javascript 发送到返回 RedirectToAction 和一些数据的操作。

我的 Js:

    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "GetAssetFilterID",
        data: JSON.stringify({ 'VidLink' : clipData.src, 'InitialTime': clipData.markIn, 'EndTime': clipData.markOut }),
        dataType: "json",
        /*async: false,*/
    });

我的行动:

[HttpPost]
public ActionResult GetAssetFilterID(string VidLink, string InitialTime, string EndTime)
{
    //some code
    return RedirectToAction("Share", new { vid = VidLink, fil = filterName });
}

注意事项

  • 我在 js 上有 url controller/action 和它的链接 生成的是controller/controller/action
  • 我在控制台上没有收到任何错误,没有任何反应。
  • 我不需要使用 Ajax,我只想将数据从我的 Js 发送到我的 动作结果。 Ajax 就是我找到的示例。

提前致谢

【问题讨论】:

  • 首先,你可能不想做JSON.stringify。 jQuery 会根据需要为您处理。把对象递给它。其次,您没有success 回调或任何东西。你预计会发生什么?
  • 我不想回到 javascript。我只是不想让Javascript发送数据并调用函数,函数返回RedirectToAction,永远不会回到Js @MikeC
  • 所以您想在发送数据后更改页面?然后你应该提交一个表格。 AJAX 的全部目的是允许您在不更改页面的情况下发送和检索数据。
  • 没有 JSON.stringify 我得到一个 500 内部错误。是的,我只是不想调用将我发送到另一个页面的函数。我没有表单,我的函数被其他脚本调用@MikeC
  • 谁能告诉我投反对票的原因?

标签: javascript c# asp.net asp.net-mvc


【解决方案1】:

你不能那样做。你所能做的就是在 ajax 结果中返回一个 url 并使用 JS 进行重定向。返回 json 或类似的 url,并在 ajax 成功或完成回调中进行重定向。

因为浏览器从未发布过它不期望允许/导致重定向的响应。

也是asp.net mvc4 ajax login: RedirectToAction not working的副本

【讨论】:

  • 奇怪的是Javascript不允许我将数据发送到actionresult并且没有回调
  • 我不明白你的意思。如果没有回调,javascript 与它获得的任何响应无关,RedirectToAction 会创建一个 HTTP 302 重定向 httpresponse,其中 A)您必须手动编码才能在 JS 中处理 B)浏览器本身会忽略它,因为它从未发出请求(js 做到了)。
  • 我想要的很简单:Js:调用并发送数据到ActionResult。动作结果重定向到分享并发送一些数据。
  • 您不能从 AJAX 请求返回 RedirectToAction 结果并自动重定向,故事到此结束。您可以 POST 或 GET 到该操作,它会起作用,或者您可以在您的 javascript 中执行其他操作来处理响应。
  • 我不需要使用Ajax,我只想将数据从我的Js发送到我的ActionResult。 Ajax 是我找到的示例。
猜你喜欢
  • 2013-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-16
  • 1970-01-01
相关资源
最近更新 更多