【问题标题】:How RedirectToAction which returna partial view can return a full view?返回局部视图的 RedirectToAction 如何返回完整视图?
【发布时间】:2012-06-22 20:23:34
【问题描述】:

我正在重定向到一个动作,该动作又在PartialView中显示内容

return PartialView(data);

我这样做重定向:

return RedirectToAction("SpkAction",  new { id = ID});

重定向工作正常,我确实正确地到达了SpkAction。 但是当 PartialView 被渲染时,它只显示PartialView 而不是整个表单。

如何让PartialView 显示整个表单,而不仅仅是使用RedirectToActionPartialView 去执行返回PartialView 的操作?

【问题讨论】:

  • 我删除了 jQuery 标签,因为我看不出它与您的问题有什么关系。我说的对吗?

标签: asp.net-mvc asp.net-mvc-3 model-view-controller partial-views


【解决方案1】:

如何使用 RedirectToAction 让 PartialView 显示整个表单,而不仅仅是 PartialView,该 RedirectToAction 转到返回 PartialView 的操作?

你不能。

如果您重定向到返回 PartialView 的操作,您希望它如何返回完整视图?

重定向到返回 View 的操作。

【讨论】:

    【解决方案2】:

    你应该做的是在视图中渲染动作,而不是从控制器重定向到它。将此放置在您希望局部显示在您的视图中的位置:

    @Html.Action("SpkAction", new { id = ID})
    

    如果您使用的是 Razor 视图引擎。

    否则重定向到仅呈现部分的操作将导致该部分在浏览器中可见。

    【讨论】:

    • @Html.Action 会在视图被调用时添加它,你可以做你想做的事情,或者至少看起来你想做的事情。
    • 据我了解,他试图在另一个动作中包含一个子动作,但我可能错了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-16
    • 2012-10-04
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    相关资源
    最近更新 更多