Kendo UI Grid:按部件加载数据

时间:2012-11-16 17:28:16

标签: jquery javascript-events kendo-ui

我有一个网格,我从大型数据库中显示数据;但是我需要按部分显示数据。我的意思是,我的数据库中有一个表,我希望在我的Kendo UI网格中仅加载10个第一行时显示10,000行,以及用户何时使用滚动并返回进行新查询(按块,例如第二次加载时为200-300)并显示新数据而不丢失前一个数据。 我在DataTables框架中看到过类似的东西,但是使用了kendo选项,我无法做到这一点。 如果您需要更多信息,请问我。

2 个答案:

答案 0 :(得分:2)

您正在寻找的是远程数据的虚拟化您在KendoUI网站http://demos.kendoui.com/web/grid/virtualization-remote-data.html中有一个演示,并在enter link description here中有文档。

基本上,您必须在网格中定义:

scrollable: {
     virtual: true
}

答案 1 :(得分:0)

@model IEnumerable<KendoUIMvcApplication1.Models.SiteMonitoring>

@{
    ViewBag.Title = "Site Monitoring";
}

<h2>@ViewBag.Message</h2>

@(Html.Kendo().Grid(Model)    
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(s => s.SiteId).Groupable(false);
        columns.Bound(s=> s.SiteName);
        columns.Bound(s=>s.SiteStatus);
        columns.Bound(s => s.UpdateTime);
        columns.Bound(s=>s.FuelLevel);
        columns.Bound(s => s.BatteryStrength);
        columns.Bound(s => s.DGStatus);
        columns.Bound(s => s.ACStatus);
        columns.Bound(s => s.DoorOpen);
    })



    ***.Scrollable(scrollable => scrollable.Virtual(true).Height(280))***

    .DataSource(dataSource => dataSource
     .Ajax()
    .PageSize(2)
    .Read(read => read.Action("Index", "SiteMonitoring"))
)
)

当我向下滚动以查看下一条记录时,页面需要无限时间加载(实际上不加载)。不知道是什么问题?