2014-03-03 65 views
0

我有下面的代碼的CSHTML頁:Ajax.ActionLink返回空HREF在MVC 4

@Ajax.ActionLink("My ajax link", "ActionName", new { id = Model.Id }, new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "myDivId", HttpMethod = "GET" }) 
<div id="myDivId"></div> 

當我調試項目,該頁面的源代碼是:

<a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#myDivId" href="">My ajax link</a> 

我只是不明白爲什麼「href」屬性是空的。控制器是相同的,執行實際的網頁,並有一個名爲「ActionName」的行動...任何人都可以幫忙嗎?

回答

0

好了,我回答自己,幫助別人這個問題:你在ajaxlink指定的路由必須在「RouteConfig.cs」或「Global.asax中」註冊...

context.MapRoute(
      "MyRoute", 
      "Test/Hello/{id}", 
      new 
      { 
       Controller = "ControllerName", 
       action = "ActionName" 
      } 
     ); 
0

試試這個:

@Ajax.ActionLink("My ajax link", "ActionName","ControllerName",null, new { id = Model.Id }, new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "myDivId", HttpMethod = "GET" }) 
<div id="myDivId"></div> 
+0

我已經嘗試過,沒有運氣...... –