通过过滤或排序刷新后GridMvc消失

时间:2015-11-10 22:09:28

标签: asp.net-mvc gridview

我正在使用此链接中的GridMvc:

https://gridmvc.codeplex.com

当我在一个简单的新页面中有一个网格时,我没有问题。但是当我在网格上使用排序或过滤时,我的网格在菜单下(菜单似乎刷新页面),网格消失。

这是我的控制器代码:

  public ActionResult Index()
      {
        DAL.DataManager dal = new DAL.DataManager();
        List<data> data = new List<data>();
        data = dal.get_AllDate();
        return View(data);
     }

这是我的观点:

   @using GridMvc.Html
   @model IEnumerable<data>

 @{
  ViewBag.Title = "Index";
  }

<script src="@Url.Content("~/Scripts/jquery.min.js")" type="text/javascript"> </script>
<link href="@Url.Content("~/Content/Gridmvc.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/gridmvc.min.js")"     type="text/javascript"> </script>


   @Html.Grid(Model).Columns(columns =>
  {
     columns.Add(model => model.dataUser).Titled("User").SetWidth(110);
     columns.Add(model => model.Create_Date).Titled("Create Date").SetWidth(110).Filterable(true).Format("{0:dd/MM/yyyy}");
    ......

    }).WithPaging(20).Sortable().Filterable().WithMultipleFilters()

1 个答案:

答案 0 :(得分:0)

我也遇到了这个错误,因为我注意到它正在执行GET而不是POST,所以作为一种解决方法,我在cshtml文件的末尾使用了以下内容:

@section Scripts {
<script type="text/javascript">
  $(function(){
      $(".grid-header-title").click(function (e) {
          if ($(e.target).is("a")) {
              // It was the anchor element that was clicked -- meaning, its sortable
              e.preventDefault();

              // '/Search' should be replaced with your form action
              $(document.forms[0]).attr("action", '/Search' + $(e.target).attr("href")); 
              $(document.forms[0]).submit();
          }
    });
  });
</script>
}