我正在尝试使用celltemplate。但点击事件不起作用。
$scope.format = function(val){
return val.replace(/\//g, "");
};
var executionColumns = {
data: [],
enableSorting: true,
paginationPageSizes: [25, 50, 75],
paginationPageSize: 25,
enableColumnMenu: true,
enableFiltering: true,
columnDefs: [
{ field: 'StartDate', cellTemplate: '<button ng-click="format (row.entity)">log</button>' },
{ field: 'Status' },
]
};
那我该怎么办?怎么了?
答案 0 :(得分:2)
它对我来说就像第二个代码一样
columnDefs: [
{ field: 'StartDate', cellTemplate: '<button ng-click="format(grid.getCellVale(row.entity) )">log</button>' },
{ field: 'Status' },
]
或将格式化函数移动到定义为
的外部镜像 $scope.globalExternalScope = {
format:function(entity){..........}
}
然后使用
之类的模板 columnDefs: [
{ field: 'StartDate', cellTemplate: '<button ng-click="getExternalScopes().format(grid.getCellVale(row.entity) )">log</button>' },
{ field: 'Status' },
]
答案 1 :(得分:0)
使用
<button ng-click="grid.appScope.format (row.entity)">log</button>
现在它正在为我工作!
答案 2 :(得分:0)
如果您使用的是.component
,在其中渲染ui-grid
,并且方法定义为:
this.handleClick = function(){...}
它将在cellTemplate
中通过以下方式向您提供
cellTemplate: '<button ng-click="grid.appScope.$ctrl.handleClick()">log</button>' }