2013-08-27 128 views
23

目前在鏈接上html.actionlink點擊返回上一頁

Customer/businessunit/RepresentativeDetails?RepresentativeId=cd3a7263-78f7-41bd-9eb0-12b30bc1059a

我有以下的看法

@Html.ActionLink("Back to List", "Index") 

代碼,帶我到這個鏈接

customer/businessunit/index 

,而是要去索引頁面我想要轉到上一頁當actionlink我s點擊,這是

Customer/businessunit/BusinessUnitDetails/c4a86253-a287-441e-b83d-71fbb6a588bc 

如何創建一個動作鏈接,指示我到前一頁? 像@Html.ActionLink("Back to Details", //go to previous page)

+0

可能重複://計算器。 com/questions/4686124/actionlink-back-button) – rogerdeuce

回答

47

除非您正在跟蹤服務器上的前一頁,否則爲什麼不使用瀏覽器的內部歷史?在這種情況下,不需要服務器端代碼。你可以只使用這樣的事情:

<a href="javascript:void(0);" onclick="history.go(-1);">Back to Details</a> 

或者,從標記分離代碼:

<a href="javascript:void(0);" id="backLink">Back to Details</a> 

<script type="text/javascript"> 
    $(document).on('click', '#backLink', function() { 
     history.go(-1); 
    }); 
</script> 

這將用戶送回無論是在瀏覽器歷史上的最後一頁。 (當然,如果他們從任何其他來源到達那個頁面,那麼它不會將它們「回到細節」,而是僅僅「返回」。)

+1

如果您有詳細信息,請點擊 – Emanuele

9

不要使用ActionLink的這個......只是做:

<a href="javascript:history.back()">Back to List</a>

...將採取用戶返回到之前的當前

頁,無論他們是
1

這是事後很多,但我想我'd貢獻。就我個人而言,我會用CSS類標記我的標記元素,這樣我就可以重新使用標記並完成它。

標記:

<a href="" class="go_back"> Back </a> 

腳本:

<script type="text/javascript"> 
    $(function() { 
     $('.go_back').click(function (e) { 
      e.preventDefault(); 
      history.go(-1); 
     }); 
    }); 
</script> 
27

如果你仍然想使用ActionLink你可以做類似的建議通過JuanPieterse

@Html.ActionLink("Back to previous page", null, null, null, new { href = Request.UrlReferrer}) 

您可以使用actioncontroller。見回答類似的問題here

6

如果你不喜歡用ActionLink或JavaScript中,href="@Request.UrlReferrer"會做的伎倆:[ActionLink的返回鍵(HTTP的

<div> 
    <a href="@Request.UrlReferrer" class="btn btn-default btn-lg" title="Back to list"> 
     <span class="glyphicon glyphicon-arrow-left" aria-hidden="true"></span> 
    </a> 
</div> 
+0

輝煌。 IMO最好的答案。簡單。沒有內聯JS或奇怪的'ActionLink'。 – Jess