在Razor view中,可以使用Url.Action的方法來做按鈕的導頁
語法結構為 @Url.Action(action,controller) ,兩個參數,先給action再給controller
1 2 3 |
<input type="button" value="按鈕名稱" onclick="javascript:window.location= '@Url.Action("action名稱", "controller名稱")'" /> |
若你想寫在jquery中,按鈕點擊後發送表單,可寫成
1 2 3 4 |
$("#按鈕ID").click(function(){ $('form').attr('action','@Url.Action("action名稱","controller名稱")'); $('form')[0].submit(); }); |
如導向的是同樣的controller,也可省去controller參數,寫成
1 |
@Url.Action("action名稱") |
Url.Action支援函數多載(function overloading),也有以下其他延伸用法
如在你的參數中,增加 route values或通訊協定等
1 |
@Url.Action("action名稱", "controller名稱", routevalues, "http") |
http://stackoverflow.com/questions/19107061/url-action-including-route-values
延伸學習:
http://blog.miniasp.com/post/2009/07/20/ASPNET-MVC-Developer-Note-Part-8-Routing.aspx
參考:
https://blog.mariusschulz.com/2011/06/30/how-to-build-absolute-action-urls-using-the-urlhelper-class