书格前端

angularjs中模态窗口$uibModal的数据回传问题


angularjs中模态窗口$uibModal的数据回传问题

关于模态窗口的数据如何回传到主控制器中?

通过$uibModalInstance.close(data)来回传数据。 主控制器通过result回调接收即可。

代码实例如下:

app.controller("commonCtl", function ($scope, $uibModal) {
  $scope.openDialog = function () {
    var modalInstance = $uibModal.open({
      templateUrl: 'dialog.html',
      controller: 'formCtl',
      windowClass: 'window',
      size: 'lg',
      resolve: {
        data: function () {
          return $scope.data;
        }
      }
    });

    modalInstance.result.then(
      function (data) { // 关闭时回传过来的值($uibModalInstance.close(data))
        $scope.data = data;
      },
      function (reason) { // 取消时
        // 点击空白区域:backdrop click
        // 点击取消:cancel
      }
    );
  };
})

【全文完】