Ajax.ActionLink不工作MVC

时间:2011-07-14 14:08:38

标签: asp.net-mvc asp.net-ajax actionlink

我有一个网格,我需要在网格中添加Details列,当选择detail列时,该行的详细信息应该出现在当前网格的下方。

我的代码:

<% Html.Grid(Model.InnerModel.StatusRecords)
        .Empty("No data available")
        .Attributes(new Hash(id => "resultsTable"))
        .Columns(column =>
        {
            column.For(x => Ajax.ActionLink("Details", "BatchDetailsByStatus", "ReportsController", new { statusId = x.Status, jobNo = Model.InnerModel.JobNumber }, new AjaxOptions
            {
                HttpMethod = "GET", 
                UpdateTargetId = "StatusBatchDetailsDiv"})).Named("Details").DoNotEncode();  
            column.For(x => x.Status);
            column.For(x => x.TotalCount).Named("Count");
         }).Render(); %>


我的控制器代码:

[AcceptVerbs(HttpVerbs.Get)]
     public ActionResult BatchDetailsByStatus(int statusId, string jobNo)
     {
         var batchModel = BatchByStatus.GetBatchDetailsByStatus(statusId, jobNo);
         return PartialView("BatchDetailsByStatus", batchModel);
     }

我有一个partailview BatchDetailsByStatus,它可以显示所有需要的数据。

但是当我点击“细节”链接时没有任何反应,它就不起作用。

我错过了什么。

谢谢

1 个答案:

答案 0 :(得分:1)

在Ajax.ActionLink中将ReportsController替换为Reports(没有Controller的控制器名称),并且它可以工作