繁体   English   中英

在Angular Kendo UI的网格列中使用自定义编辑器

[英]Using Custom editors in grid column with Angular Kendo UI

我试图在我的角度应用程序中将自定义编辑器用于可编辑的kendo ui网格。 由于某些原因(我无法跟踪),未触发自定义编辑器。

我希望触发以下操作,但它不起作用。

console.log("Editor Launched", options);

这是相同的插件: http ://plnkr.co/edit/WioRbXA3LHVVRQD95nXA?p=preview

app.controller('MainCtrl', function($scope) {
$scope.model = {};
$scope.model.dataSource = new kendo.data.DataSource({
    data: createRandomData(10),
    schema: {
        model: {
            fields: {
                City: { type: "string" }, 
                Title: { type: "string" },
                BirthDate: { type: "date" },
                Age: { type: "number" }
            }
        }
    },
    pageSize: 16,
    editable:true 
});  

$scope.addWWNumEditor= function (container, options) { 
  console.log("Editor Launched", options); 
  $('<input kendo-numeric-text-box k-min="10" k-max="20" style="width: 100%;" data-bind="value:' + options.field + '"/>')
  .appendTo(container);
}



$scope.controlIsDisabled=function(model){
//console.log("model",(model.Age>=50));
var toReturn =  (model.Age>50)?"columnDisabled" : "columnActive";
//console.log('to Return',toReturn);
return toReturn;
}

$scope.model.columns = [  
    { field: 'City', title: 'City' },
    { 
      field: 'Title', 
      title: 'Title',
      template:'<span style="color:red;">EDITABLE</span><span ng-
      class="controlIsDisabled(dataItem)">#=Title#</span>'
    },
    { 
      field: 'Age', 
      title: 'Age',
      template:'<span ng-class="controlIsDisabled(dataItem)">#=Age#</span>' 
     ,
      editor:$scope.addWWNumEditor
    }
];

}); 

假设您的Plunkr镜像了您的实际代码,我看到的主要问题是您在网格元素上绑定了k-columns

您目前有k-columns="{{model.columns}}" ,但是{{}}在这里是不必要的。 更改为k-columns="model.columns"会使编辑器功能按预期执行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM