【问题标题】:How to trigger angular modal popup on slickgrid row double click如何在 slickgrid 行双击时触发角度模态弹出窗口
【发布时间】:2015-02-28 00:15:35
【问题描述】:

我有一个与单独按钮一起使用的角度模式,但需要在双击 slickgrid 中的一行时弹出它。我应该如何构建这段代码:

grid.onDblClick.subscribe(function (e, args) {
  //make the angular modal popup
});

使用角度模态,我通常只选择 dom 元素,然后将 ng-click="openModal()" 添加到 div 标签中,但我什至无法在 chrome 开发工具中找到 div。有什么想法吗?

【问题讨论】:

    标签: angularjs modal-dialog row slickgrid double-click


    【解决方案1】:

    目前,我将 slickgrid 包裹在指令中,这意味着我的 html 看起来像这样:

    <div class="gridContainer" ng-controller="EditModalCtrl">
      <div class="modalTest" style='width:100%;'>
        <div style='width:100%;height:500px;' all-batches-grid></div>
      </div>
    </div>
    

    在我的 slickgrid 指令中,我有:

    angular.module('epDefaultApp.allBatchesDirective', [])
      .directive('allBatchesGrid', [function () {
        return {
          restrict: 'EA',
          link : function(scope, element, attrs){
    
            grid.onDblClick.subscribe(function (e, args) {
    
              $('.addButton').removeClass('addText');
              $('#addEditButton').addClass('editButton');
              $('.addButton').addClass('editText');
    
              var item = grid.getDataItem(args.row);
              scope.openPrefill('lg', item);
            });
          }
        }
      }]);
    

    这也是我的控制器:

    angular.module('epDefaultApp.editModalController', [])
      .controller('EditModalCtrl', ['$scope', '$modal', '$log', 'toastr', function     ($scope, $modal, $log, toastr) {
    
      $scope.openPrefill = function (size, selectedRowObject) {
        $scope.selectedRow = {
          vendorName: selectedRowObject[0],
          purchaseNumber: selectedRowObject[3],
          invoiceAmount: selectedRowObject[6],
          invoiceDate: selectedRowObject[10],
          invoiceNumber: selectedRowObject[1],
          dueDate: selectedRowObject[9],
          checkCode: '0',
          memo: selectedRowObject[5]
        };
    
    }]);
    

    这样做的原因是指令中的范围变量实际上链接到 EditModalCtrl 中的 $scope。这发生在我们第一次在 HTML 文件中初始化 grid 指令时。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-31
      • 2015-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多