剑道网格分页抛出java脚本错误



我目前正在做剑道网格。我已经用默认分页实现了ajax绑定。

在ie10中,我在页面加载之前在aspnetmvc.min.js文件中得到javascript错误。一旦页面加载,一切都运行良好。

下面是我使用的 代码
.cshtml
--------
<div>
@(Html.Kendo().Grid<KendoUIAjaxBinding.Model.PM_ANO>()
  .Name("grid")
          .DataSource(dataSource => dataSource 
              .Ajax() 
              .Read(read => read.Action("Products_Read", "Home")
              .Data("productsReadData")
              )
           )
  .Columns(columns =>
  {
      columns.Bound(anomaly => anomaly.GOD);
      columns.Bound(anomaly => anomaly.VER);
      // Create a column bound to the ProductID property
      columns.Bound(anomaly => anomaly.C_ANO);
      // Create a column bound to the ProductName property
      columns.Bound(anomaly => anomaly.Y_ANO);
      // Create a column bound to the UnitsInStock property
      columns.Bound(anomaly => anomaly.Z_REP_AUTO);
  })
  .Pageable(x => x.PageSizes(true)) // Enable paging
  .Sortable() // Enable sorting
 )
 </div>

in Layout page i have rendered like this
----------------------------------------
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title - My ASP.NET MVC Application</title>
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<meta name="viewport" content="width=device-width" />

<script src="~/Scripts/jquery-1.7.1.js"></script>
<script src="~/Scripts/Kendo/kendo.web.min.js"></script>
<script src="~/Scripts/Kendo/kendo.aspnetmvc.min.js"></script>
</head>
controller code
------------------
 public JsonResult  
 Products_Read([DataSourceRequest]DataSourceRequest                     request,            string    firstName, string lastName)
    {
        var _context = new E2A_GUIEntities();
        IQueryable<PM_ANO> anomaly = _context.PM_ANO;

            var total = anomaly.Count();
            if (request.Page > 0)
            {
                anomaly = anomaly.OrderBy(a => a.C_ANO).Skip((request.Page - 1) * request.PageSize);
            }
            anomaly = anomaly.Take(request.PageSize);
            var result = new DataSourceResult()
            {
                Data = anomaly, // Process data (paging and sorting applied)
                Total = total // Total number of records
            };
        return Json(result, JsonRequestBehavior.AllowGet);
    }

请帮我解决这个问题。

提前感谢。

谢谢刚达哈

试试这样:

 public JsonResult Products_Read([DataSourceRequest]DataSourceRequest request, string firstName, string lastName)
        {
            var _context = new E2A_GUIEntities();
            IQueryable<PM_ANO> anomaly = _context.PM_ANO;

            //do any other logic here. 
            // eg  anomaly = anomaly.OrderBy(o => o.C_ANO).Where(w => w.D_ANO.Contains(firstname);

            return Json(anomaly.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet);
        }

请确保包含以下using语句:

using Kendo.Mvc.Extensions;

ToDataSourceResult扩展方法将为您完成所有的网格获取、分页、排序、过滤和选择。

编辑:

这些是我作为我的剑道项目的一部分包含的文件

<link href="@Url.Content("~/Content/kendo/2014.1.624/kendo.common.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2014.1.624/kendo.dataviz.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2014.1.624/kendo.bootstrap.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2014.1.624/kendo.dataviz.bootstrap.min.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/kendo/2014.1.624/jquery.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2014.1.624/kendo.all.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2014.1.624/kendo.aspnetmvc.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo.modernizr.custom.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2014.1.624/cultures/kendo.culture.en-GB.min.js")"></script>

显然将2014.1.624更改为您正在使用的版本或文件路径以匹配您的项目。

最新更新