【问题标题】:How to redirect full page rather then only partial view changing?如何重定向整页而不是仅更改部分视图?
【发布时间】:2014-02-04 01:19:18
【问题描述】:

我有一种情况,我在一个名为 customer 的控制器上,我有一个使用客户编号作为标识符调用的帐户方法。

然后我有一个ActionLink,它会将我带到欠费索引的部分视图中的欠费任务表。在加载这个时,我存储了Request.ServerVariables["http_referer"],所以我可以用它来返回。

当我随后将 Return Redirect() 与引用者一起使用时,它会进行重定向,但会像在 iframe 中加载一样加载到部分部分。

谁能告诉我如何重定向整个页面而不仅仅是部分页面?

【问题讨论】:

  • 您是否使用 AJAX 来呈现局部视图?您还可以发布一些带有视图和操作的代码吗?
  • 是的,我们使用 AJAX 来调用和渲染局部视图。看起来 AJAX 可能会将其加载到自身内部。将尽快尝试获取代码的 sn-ps

标签: c# asp.net-mvc redirect partial-views


【解决方案1】:

尝试重定向到将返回您想要的视图的特定操作

return RedirectToAction("Index", model);

【讨论】:

  • 执行任何类型的重定向,包括重定向到操作只会将其加载到部分视图空间中。
  • 您是否也希望将视图重定向到部分视图?
  • 不,我正在尝试跳出 AJAX 部分并将用户发送回完整的 URL 以刷新整个页面,而要转到的页面是一个完全不同的控制器。
  • @Graham 那么您如何调用正在执行重定向的控制器?是 jQuery ajax 帖子还是发生了什么?
  • 控制器正在处理返回动作。在这里查看 cmets 帮助我找到了另一个给我解决方案的 stackoverflow 问题。帖子在这里link。感谢大家的帮助。如果您没有指出 AJAX 是导致该行为的原因,就不会找到该帖子。
【解决方案2】:

为 ActionResult 返回使用以下返回中断 AJAX 调用并重定向整个页面

    return JavaScript("window.location = 'your specified url'");

【讨论】:

  • 你会如何建议它返回一个链接,然后 javascript 会知道重定向整个页面而不是只重定向部分视图,我需要 AJAX 以它当前的方式呈现另一种方式使用此表格。只有一种情况我需要重定向整个页面?
猜你喜欢
  • 2018-06-08
  • 2015-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-05
  • 1970-01-01
  • 1970-01-01
  • 2013-02-15
相关资源
最近更新 更多