Kendo grid在最后一页,最后一行位置插入新记录

mez*_*mez 4 kendo-ui kendo-grid kendo-asp.net-mvc

我在内联GridEditMode和GridInsertRowPosition中使用kendo网格设置为bottom.Ajax用于数据绑定.排序已启用并按DateTime字段排序.页面大小设置为10.

当有多个页面(超过10个记录)时会出现问题.我有一个javascript函数跳转到最后一页并在底部显示新行.但是在某些点触发了排序事件,并且网格移动到只读模式.

是否有可能仅在添加新行时阻止网格排序?

欢迎任何帮助.谢谢!

Ona*_*Bai 8

您应该在工具栏中定义一个自定义命令:

toolbar   : [
    {
        name : "my-create",
        text : "Add new record"
    }
],
Run Code Online (Sandbox Code Playgroud)

然后,使用as选择器k-grid-和命令名称向其添加事件侦听器.

$(".k-grid-my-create", grid.element).on("click", function (e) {
}
Run Code Online (Sandbox Code Playgroud)

最后,我们将使用Kendo UI数据源的功能插入特定点:

var dataSource = grid.dataSource;
var total = dataSource.data().length;
dataSource.insert(total, {});
dataSource.page(dataSource.totalPages());
grid.editRow(grid.tbody.children().last());
Run Code Online (Sandbox Code Playgroud)

请注意,我们应该插入行移到最后一页.对于按日期排序的列,这应该没问题.

请检查以下代码:http://jsfiddle.net/OnaBai/sAVGk/


Evg*_*iyK 8

查看新的kendo设置:createAt

只需将其设置为"底部":

...
createAt: 'bottom',
...
Run Code Online (Sandbox Code Playgroud)