4

我有一个简单的剑道 UI 网格,它应该最多只有 5 行。是否有任何配置属性可以用来限制行,或者我应该编写一些简单的自定义逻辑来检查我的数据源并防止添加超过 5 行?

4

2 回答 2

3

给定以下kendoGrid定义:

var grid = $("#grid").kendoGrid({
    dataSource:stocksDataSource,
    columns   :[
        { field:"col1", title:"Column 1" },
        { field:"col2", title:"Column 2" },
        { field:"col3", title:"Column 3" }
    ],
    toolbar   :[
        { name      :"create", className :"k-grid-add2" }
    ],
    editable  :true
}).data("kendoGrid");

我在工具栏中添加了一个create按钮,将其重新定义classNamek-grid-add2. 然后我在此按钮上添加陷阱click事件,如下所示:

$(".k-grid-add2", grid.element).bind("click", function (ev) {
    console.log("adding!");
    if (grid.dataSource.data().length < 5) {
        grid.addRow();
    } else {
        alert("Too many, sorry!")
    }
});

我在哪里检查行数,如果少于 5 行,则调用grid.addRow(),否则我会提醒用户行数过多。

于 2012-11-26T11:24:27.920 回答
2

如果您的意思是页面大小应限制为 5 行,那么您可以pageSize在数据源上设置选项:

$("#grid").kendoGrid({
   dataSource: {
       pageSize: 5
   }
});

http://docs.kendoui.c​​om/api/web/grid#pageablepagesize-number

于 2012-11-26T10:26:21.707 回答