Kendo Popup网格编辑:选择至少一个复选框验证

时间:2013-09-11 10:28:36

标签: kendo-ui kendo-grid

我有一个绑定到10个字段的数据源的网格,所有这些都是复选框。网格已启用弹出编辑。

我想添加一个检查(在提交之前)检查至少一个复选框的验证。如何添加此验证?

所有示例都显示了每个字段的验证,而我想要验证整个行。

更新      SaveChanges对我不起作用但保存了。

save:function(e) {
        if(e.model){
                    var selected = false;
                    for (var key in e.model) {
          if (e.model.hasOwnProperty(key)) {
                        if(typeof e.model[key] == "boolean"){
                          if(e.model[key]){
                            selected = true;                                                                         
                            break;
                          }
                        }
                      }
                    } 
                    if(!selected){                                                                                                       
                      e.preventDefault();
        }
}               

1 个答案:

答案 0 :(得分:0)

是的,验证不是那么灵活。 选项1: 点击网格的saveChanges事件并遍历数据源数据项:

 saveChanges: function(e) {
       var data = yourDatasource.data(); // this.dataSource.data()
       for (var i = 0; i < data.length; i++) {
            if (!IsValid(data[i])) {
                e.preventDefault();
                // don't submit
            }
       }

},

选项2: 在添加到网格的每个复选框上附加onclick事件并计算点击次数。如果您计算的点击次数较少,则行计数未通过验证。这种验证也将在“saveChanges”事件中处理。