2011-07-21 84 views
0

我使用這個過載:Ajax.ActionLink AjaxOptions不工作

@Ajax.ActionLink("Match", "Match", "User", new { userId = Model.userId, matchId = match.id }, new AjaxOptions { HttpMethod = "POST", Confirm = "test" }, new { }) 

(「匹配」是一個foreach中的實例變量)

但既不是POST也不是我的「測試」確認正在。我發現另一個SO問題,指出它可能是由於其他頁面上的JavaScript錯誤,但根據FireBug我沒有。

然後我發現this這個問題似乎在告訴我我正確地做了。我以爲我使用了錯誤的超載,但找不到更好的匹配。怎麼了?

編輯:將鏈接也被渲染/用戶/用戶id =等等& matchId =等等,如果這是相關

+0

確保控制器操作與您傳遞的參數相匹配[new {userId = Model.userId,matchId = match.id}]。 – ShankarSangoli

+0

它確實 - 如果我刪除[HttpPost],它將調用該方法並適當地傳遞參數。但我需要它是POST,並且POST參數只是不被識別,也沒有其他選項放置在AjaxOptions中{} – keyvaluepear

回答

2

請確保您有,如果你使用jQuery,否則在頁面上加入jQuery的不顯眼的AJAX腳本您必須在頁面上包含Microsoft AJAX腳本

+0

就是這樣!謝謝。我添加了jquery.unobtrusive-ajax.min.js,我的鏈接現在正常運行。 – keyvaluepear