在我的Kendo UI Grid中,我将Page Size属性设置为3 - PageSize(3):
@(Html.Kendo().Grid<Kendo.Mvc.Examples.Models.Discount>()
.Name("discountgrid")
.Columns(c=>
{
c.Bound(d => d.Id);
c.Bound(d => d.Category);
c.Bound(d => d.Percentage);
c.Bound(d => d.Merchandise);
c.Command(cm => { cm.Edit(); cm.Destroy(); });
})
.Pageable()
.ToolBar(toolbar => toolbar.Create())
.Editable(editable => editable.Mode(GridEditMode.InCell))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(3)
.ServerOperation(false)
.Model(model => model.Id(d => d.Id))
.Create(update => update.Action("EditingInline_Create", "Grid"))
.Update(update => update.Action("EditingInline_Update", "Grid"))
.Destroy(update => update.Action("EditingInline_Destroy", "Grid"))
)
)
添加前三行后,当我插入第4条记录时,第一条记录消失(正如预期的那样) - 但我没有看到在网格页脚中转到第二页(第2页)的选项。
为什么?我错过了什么?
答案 0 :(得分:3)
我认为您缺少向网格提供READ操作。
答案 1 :(得分:2)
您必须在DataSource上指定Read操作并添加RequestEnd事件。您可以将DataSource读取方法放在此事件中。然后可以使用RequestEnd事件上的事件类型参数(例如“update”,“create”,“destroy”)来确定哪个操作已完成并重新加载网格上的数据。
@(Html.Kendo().Grid<Kendo.Mvc.Examples.Models.Discount>()
.Name("discountgrid")
.Columns(c=>
{
c.Bound(d => d.Id);
c.Bound(d => d.Category);
c.Bound(d => d.Percentage);
c.Bound(d => d.Merchandise);
c.Command(cm => { cm.Edit(); cm.Destroy(); });
})
.Pageable()
.ToolBar(toolbar => toolbar.Create())
.Editable(editable => editable.Mode(GridEditMode.InCell))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(3)
.ServerOperation(false)
.Events(e => { e.RequestEnd("onRequestEnd"); })//onRequestEnd is the javascript fxn
.Model(model => model.Id(d => d.Id))
.Read(read => read.Action("EditingInline_Read","Grid"))
.Create(update => update.Action("EditingInline_Create", "Grid"))
.Update(update => update.Action("EditingInline_Update", "Grid"))
.Destroy(update => update.Action("EditingInline_Destroy", "Grid"))
))
<script type="text/javascript">
function onRequestEnd(e) {
if (e.type === "create" || e.type === "update" || e.type === "destroy") {
e.sender.read();
}
}
</script>
如果您需要更多信息,请阅读link
答案 2 :(得分:1)
尝试将Read()
操作添加到您的网格中,出于测试目的,可以设置ServerOperation(true)