如何使用部分视图呈现上一页,以便在重新显示到该prev页面之前向我显示他们向我显示的内容?

时间:2014-09-11 18:36:21

标签: asp.net asp.net-mvc asp.net-mvc-4

如何使用部分视图呈现上一页显示我在重定向到ASP.NET MVC中的prev页面之前他们向我显示的内容?

所以,我有一个开始页面,然后用户做了一些动作,取决于它们正在渲染一些部分视图(为此目的使用$ .ajax方法),然后用户转到另一个页面并返回到前一个页面。结果,他看到了prev页面,但只是因为它最初没有部分视图的内容。

1 个答案:

答案 0 :(得分:0)

是"其他页面"你的MVC网站的一部分?如果是这样,您可以使用AJAX调用第二页并获取它的部分HTML。然后,您可以弹出一个Bootstrap模式窗口,其中包含该部分HTML。用户将在初始页面上看到她之前的值,因为他们从未导航过初始页面。

Bootstrap指南在这里: http://getbootstrap.com/javascript/#modals

您将ActionResult返回的HTML放在模态体中,如下所示:

$.ajax({
    type: "GET",
    url: "/MyController/_MyPartial",
    cache: false,
    traditional: true
}).done(function (htmlFromPartial) {
    $('.modal-body').html(htmlFromPartial);
}).fail(function () {
    alert('Cannot get my partial HTML!');
});

您的ActionResult _MyPartial()必须像往常一样返回PartialView()。 它在很多场合适合我,但上面的代码是未经测试的。