Подходящее событие для скрытого столбца в сетке пользовательского интерфейса

Я использую сетку пользовательского интерфейса.

http://ui-grid.info/docs/#/tutorial

В нем есть опция скрыть столбец. Я хочу получить событие, когда пользователь скрывает столбец. Я хочу показывать предупреждение, когда столбец скрыт? Есть ли какое-либо событие в сетке пользовательского интерфейса, которое срабатывает, когда столбец скрыт?

http://plnkr.co/edit/9kDPhXz1d5Yn2ioyKa6w?p=preview

<div ng-controller="MainCtrl">
     <div class="grid" ui-grid="gridOptions" ui-grid-move-columns></div>
</div>

hide column отображается, когда пользователь щелкает заголовок столбца. Появляется всплывающее окно, в котором есть возможность скрыть столбец.


person user944513    schedule 19.03.2016    source источник


Ответы (2)


Вы можете использовать столбец VisibilityChanged(scope, callBack)

onRegisterApi : function(gridApi) { 
     $scope.gridApi = gridApi;
     $scope.gridApi.core.on.columnVisibilityChanged($scope,function (column)   {console.log('Column Scope',column);}); 
}
person user6083264    schedule 22.03.2016

Этого можно добиться с помощью jQuery, добавив следующий код:

<script src="//code.jquery.com/jquery-1.12.0.min.js"></script>
<script type="text/javascript">
  jQuery(function()
  {
    jQuery('.ui-grid-column-menu-button').click(function()
    {
      $col = jQuery(this).closest('.ui-grid-header-cell');
      var colNumber = $col.index() + 1;
      var colName = $col.find('.ui-grid-header-cell-label').text();
      jQuery(".ui-grid-menu-items > li[id='menuitem-3'] button").click(function()
      {
          alert("Column Nº "+colNumber+" ("+colName+") hidden");
      });
    });
  });
</script>
person Marco    schedule 19.03.2016
comment
мы можем использовать угловой - person user944513; 19.03.2016
comment
есть ли другой способ, без использования angular?› - person user944513; 19.03.2016