我有这样的javascript代码:
<a href="javascript:window.history.back()"...
当我在浏览器中测试我的网站(使用 HTML5、MVC4)时,它运行良好。但是当我使用嵌入式浏览器在 Android/iPhone 应用程序中运行它时,我的反向链接不起作用。
有没有办法模拟history.back
使用剃须刀,比如Url.Action
?
我有这样的javascript代码:
<a href="javascript:window.history.back()"...
当我在浏览器中测试我的网站(使用 HTML5、MVC4)时,它运行良好。但是当我使用嵌入式浏览器在 Android/iPhone 应用程序中运行它时,我的反向链接不起作用。
有没有办法模拟history.back
使用剃须刀,比如Url.Action
?
您可以在会话中保存上一页 url。像这样的东西:
public ActionResult SomeCoolController(SomeCoolClass parameters) {
//some logic
var previousPageUrl = Session["PreviousPageUrl"];
if(previousPageUrl == null)
Session["PreviousPageUrl"] = Request.Url;
var isTimeToChangePreviousUrl = Session["IsTimeToChangePreviousUrl"];
if(isTimeToChangePreviousUrl != null) {
if(isTimeToChangePreviousUrl) {
Session["IsTimeToChangePreviousUrl"] = false;
Session["PreviousPageUrl"] = Request.Url;
} else {
Session["IsTimeToChangePreviousUrl"] = true;
}
} else {
Session["IsTimeToChangePreviousUrl"] = false;
}
//some return
}
另外,不要总是复制/粘贴此代码,您可以编写自己的 SuperDupaActionResult ,它将继承自 ActionResult 并包含上面的代码(例如作为方法)。