c# - 后退按钮到上一个局部 View

标签 c# .net ajax asp.net-mvc ajax.beginform

在我的 .Net MVC4 项目中, View 包含部分 View ,部分 View 在每个相应的 Ajax.Beginform 之后替换为另一个,带有选项 InsertionMode = InsertionMode.Replace, 所以senario是

  1. Partialview1 在第一次 Ajax.Beginform 调用时呈现
  2. 提交表单,partialview2 在第 2 个 Ajax.beginform 上呈现,因此 partialview1 被 partialview2 替换

3.上一个按钮召回partialview1

我想知道如何实现第 3 步,它使用简单的历史记录返回到先前的部分 View 。

最佳答案

第一种方式:我认为使用浏览器后退按钮的最佳方式是使用history.pushState

如何实现取决于你在View上的情况。

一些关于pushState的链接:

http://rosspenman.com/pushstate-jquery/

https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history

第二种方式:如果你不想使用浏览器返回按钮,你可以使用js:

function getBack()
{
   $.ajax({
     type: "GET",
     url: '@Url.Action("ReturnPartialViewControllerMethod")',
     success: function(data) {
           // data is your view
          $('#divForParticialView').html(data);
     }
   });
}

在你的 Html 中:

<a href="javascript:void(0);" onclick="getBack()">Get Back</a>

关于c# - 后退按钮到上一个局部 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26994602/

相关文章:

php - 如何获取按钮以在 jQuery 确认对话框上执行操作?

c# - NHibernate - 根据子属性过滤掉结果

c# - 应用程序关闭时 SqlConnection 会自动关闭吗?

.net - 不带await的异步方法

.net - 在无状态 REST Web 服务环境中实现验证码

jquery - 如何让 Google Analytics 跟踪 AJAX 调用的页面?

javascript - 同一域上的CORS错误?

c# - 将 MSBuild 任务中动态生成的文件添加到输出和 appx 文件夹

c# - ORA-12541 TNS :no listener on Oracle. DataAccess 连接打开

c# - 为什么 volatile 变量通常是私有(private)的?