我有一个在添加,删除,删除行时正常工作的网格。
现在,当我尝试添加行然后单击取消时出现问题。之后,我的整个网格元素丢失.data(' kendoGrid')(之后返回undefined)。我没有定义任何自定义操作。
有没有人遇到过类似的问题?
答案 0 :(得分:0)
我终于找到了解决方案......
所以,问题是我一直在使用这样的网格:
<div class='n-grid' kendo-grid="widget" k-options="gridOptions"></div>
但是这种使用需要额外的div包装器。当我把它改为:
<div>
<div class='n-grid' kendo-grid="widget" k-options="gridOptions"></div>
</div>
一切都很好......
我从angular-kendo.js的这一部分发现了这个:
self.bind("dataBinding", function(ev) {
ev.sender.$angular_itemsToCompile().each(function(){
var el = $(this);
if (el.attr(_UID_)) {
var rowScope = angular.element(this).scope();
// avoid destroying the widget's own scope
// no idea why we get it, but we do.... :(
if (rowScope && rowScope !== scope) {
destroyScope(rowScope, el);
}
}
});
在没有包装器的情况下使用时,取消行中的更改,销毁父级的范围。
希望这会有所帮助:)