0

我正在使用 ui-grid 来显示表格。

最后一列将有 3 个按钮。

页脚“更改表”中将有另一个按钮,单击哪些网格选项将发生更改,而不是显示 3 个按钮,它应该显示 1 个按钮,并且应该删除“描述”列。

当用户单击按钮时,“描述”列将被删除,但按钮列未刷新。

它仍然显示 3 个按钮而不是 1 个。

Below is the jsFiddle link:   
    http://jsfiddle.net/ag3Lc1fz/  

请帮忙

4

1 回答 1

0

没有直接的方法可以做到这一点。但是您可以使用 $scope 变量来隐藏和显示如下按钮。

 $scope.oneColumn = false;

    $scope.gridOptions = {
        excludeProperties: '__metadata',
        enablePaginationControls: false,
        useExternalSorting: true,
        useExternalFiltering: true,
        enableFiltering: true,
        onRegisterApi: function (gridApi) {
            $scope.gridApi = gridApi;

        }
    };

    $scope.gridOptions.columnDefs = [
        { name: 'name', enableCellEdit: false, displayName: 'Name', width: '20%' },
        { name: 'type', displayName: 'Type', enableCellEdit: false, width: '20%' },
        { name: 'description', displayName: 'Description', width: '30%' },
                { name: 'id', displayName: '', width: '30%', cellTemplate: '<div class="ui-grid-cell-contents" title="TOOLTIP">' +
                      '<button class="material-icons noOutline" >1</button>' +
                      '<button data-ng-show="!grid.appScope.oneColumn"  class="material-icons noOutline" >2</button>'+
                      '<button  data-ng-show="!grid.appScope.oneColumn" class="material-icons noOutline" >3</button>'+
                      '</div>' }
      ];

    $scope.toggleColumn = function() {
        $scope.oneColumn = !$scope.oneColumn;
  }

http://jsfiddle.net/uvo9zoo0/2/,看看吧。

于 2016-09-08T22:15:33.780 回答