ng范围内的ng-click无法正常工作

问题描述 投票:0回答:1

这里我使用的是剑道网格,该网格在服务器组件中被称为指令。

网格创建是在初始化块中完成的,在该块中,actio菜单也与其他列一起附加。

但是,当我们单击任何特定的操作菜单时,不会调用相关功能。

下面是参考代码

    export class serverController {
    constructor($scope){
    this.$scope = $scope;
    this.init();
    }

    init(){
            /* GRID CONTSTRUCTION */
            var globalGridOptions = angular.copy(self.cvTableOptions.commonNgGridOptions);
            var columnDefsArr = [{
                field: 'name',
                sort: {
                    direction: 'asc',
                    priority: 0
                },
                width: '15%',
                displayName: self.cvLoc('label.name'),
                cellTemplate: '<span class="crop" title="{{row.entity.name}}">{{row.entity.name}}</span>',
                enableHiding: false,
                cellTooltip: true
            }, {
                field: 'startTime[0]',
                displayName: self.cvLoc('label.doNotRunIntervals'),
                width: '15%',
                cellTemplate: '<cv-fancy-tooltip cv-objects="row.entity.startTimeMap" cv-display-width="col.drawnWidth + 20" class="fancy-tooltip-no-break"></cv-fancy-tooltip>',
                cvUserPref: "doNotRunIntervals",
                enableFiltering: false
            }, {
                name: 'action',
                displayName: cvLoc('label.actions'),
                width: '5%',
                enableFiltering: false,
                enableSorting: false,
                enableHiding: false,
                cellTemplate: '<div class="btn-group" uib-dropdown><a href class="uib-dropdown-toggle" uib-dropdown-toggle ng-disabled="disabled"><span class="grid-action-icon"></span></a><ul uib-dropdown-menu class="dropdown-menu" role="menu"><li><a href="" class="ui-grid-action-items" ng-click="this.deleteOperationWindow(row.entity)">' + cvLoc('action.delete') + '</a></li><li><a href="" ng-click="this.addOperationWindow(row.entity)">' + cvLoc('action.modify') + '</a></li></ul></div>'
            }];

            angular.extend(globalGridOptions, {
                data: 'operationWindowData',
                columnDefs: columnDefsArr
            });

            self.$scope.gridBackupWindowOptions = {
                enableColumnResize: true,
                cvIsSearchable: false,
                cvTableName: "operationWindowTable",
                cvOnGridEmpty: {
                    message: self.cvLoc("error.noOperationWindowRule"),
                },
                gridOptions: globalGridOptions,
            };

    }

addOperationWindow(){
console.log('add operation window');
}
deleteOperationWindow(){
console.log('delete operation window');
}


    serverController.$inject = ['$scope'];

    app.controller('serverController', serverController);
javascript angularjs grid kendo-grid
1个回答
0
投票

检查浏览器控制台中的cellTemplate内部代码是否已解释;如果是这样,则可以轻松访问ng-click引用的功能]

© www.soinside.com 2019 - 2024. All rights reserved.