我用的是较早的版本kendoui.web.2013.2.716.open-source。
在用kendoGrid使用Inline的行内编辑/新增时,如果设置参数batch: false,第一次新增没问题,第二次新增加了两行,观察发现它不适宜的记住了上次那个新增的model,还要一起提交。所有新增的行都会再次新增。
kendo的代码太繁琐,实在懒得去跟踪。找个个简单的解决办法:
修改设置batch: true,然后在初始化kendoGrid代码中的数据映射方法中强制指定要提交的值:
parameterMap: function (options, operation) {
if (operation !== "read" && options.models) {
options = options.models[0];
}
return options;
}
这样在后台如同窗体提交时,直接获取Post的值即可。
强制指定是避免kendoui给参数添加类似model[0]之类的前缀,管理端获取Post值和正常窗体提交格式不能保持一致了。