Grid.Mvc排序不起作用

时间:2015-04-16 15:47:44

标签: asp.net-mvc-4 grid.mvc

我使用Grid.Mvc创建了一个网格。由于某些原因,排序不起作用。当我单击列对其进行排序时,它只是重新加载页面。我对MVC很新,不知道如何解决这个问题。这是我的代码。

@Html.Grid(Model.StudentCrsHist).Columns(columns => 
       {               
           columns.Add(x => x.YR_CDE)
               .Titled("YR_CDE")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.TRM_CDE)
               .Titled("TRM_CDE")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.SUBTERM_CDE)
               .Titled("SUBTERM_CDE")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.CRS_CDE)
               .Titled("CRS_CDE")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.CRS_DIV)
               .Titled("CRS_DIV")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.CREDIT_HRS)
               .Titled("CREDIT_HRS")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.CRS_TITLE)
               .Titled("CRS_TITLE")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.ADD_FLAG)
               .Titled("ADD_FLAG")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.ADD_DTE)
               .Titled("ADD_DTE")
               .SetWidth(110)                   
               .Sortable(true)
               .Format("{0:MM/dd/yyyy}");

           columns.Add(x => x.DROP_FLAG)
               .Titled("DROP_FLAG")
               .SetWidth(110)                   
               .Sortable(true);

           columns.Add(x => x.DROP_DTE)
               .Titled("DROP_DTE")
               .SetWidth(110)
               .Sortable(true)
               .Format("{0:MM/dd/yyyy}");
       })

2 个答案:

答案 0 :(得分:0)

You should add the Sortable capabilty to your grid. In your code change the last line to be:

}).Sortable()

答案 1 :(得分:0)

尝试在声明中命名Grid,例如

@Html.Grid((IEnumerable<project_name.Models.Host>)ViewBag.Hosts).Named("assessmentsGrid").Columns(columns =>

如果这不起作用,我会检查_Layout页面中的javascript文件。你确定包括:

  • 〜/脚本/ gridmvc.min.js
  • 〜/脚本/ jQuery的1.10.2.min.js
  • &#34;〜/内容/ Gridmvc.css&#34;

注意:我没有必要在我的表声明上放置.Sortable()以使列排序工作,只需要在我的列声明上放置.Sortable(true)。我的网格结束为}).WithPaging(10).WithMultipleFilters()

我希望这会帮助你。评论我们是否可以尝试别的东西。