javascript – Klicken Sie auf die Option „Auswahlfeld', um ngDialog aufzurufen. Wenn Sie auf „Abbrechen' klicken, schließen Sie das Popup-Feld und hoffen, dass der Wert des Auswahlfelds unverändert bleibt.
怪我咯
怪我咯 2017-05-16 13:19:18
0
1
945

Titeltext ##Das Folgende ist mein Code. Nach dem Klicken auf „Abbrechen“ ändert sich der Wert des Auswahlfelds weiterhin
//views
< select class="mei-select mei-select-md" ng-model="nextparam.emscaapportionh.imp_erp_type" ng-options="m.itemValue as m.itemName for m in impErpTypes" ng-disabled="!isErpTypeEdit" ng-change="impErpTypeChange()" > </select >
//ngDialogCtrl

(function () {
    'use strict';
    angular.module('app')
        .controller("ngDialogCtrl", ['$scope',
            function ($scope) {
                $scope.msg = $scope.dialog ? $scope.dialog.msg : '确认要执行吗?';
            }
        ]);
})();
//业务逻辑
$scope.openConfirmDialog = function (callback, msg) {
$scope.dialog = {
        msg: msg
    };
    ngDialog.openConfirm({
        template: 'app/app_common/views/ngdialog.confirm.html',
        plain: false,
        showClose: true,
        closeByDocument: true,
        closeByEscape: true,
        scope: $scope,
        width: '20%',
        controller: 'ngDialogCtrl'
    }).then(callback);
};

 //修改导ERP类型
$scope.impErpTypeChange = function () {
    var impErpTypeChangeFun = function () {
        $scope.budgetGridOptions.data = [];
    };
    $scope.openConfirmDialog(impErpTypeChangeFun, '更改导类型将会清空明细,是否继续?');
}

怪我咯
怪我咯

走同样的路,发现不同的人生

Antworte allen(1)
伊谢尔伦

看了ngDialog api,加多一个preCloseCallback属性即可

       $scope.openConfirmDialog = function (callback, closeCallback ,msg) {
                    $scope.dialog = {
                        msg: msg
                    };
                    ngDialog.openConfirm({
                        template: 'app/app_common/views/ngdialog.confirm.html',
                        plain: false,
                        showClose: true,
                        closeByDocument: true,
                        closeByEscape: true,
                        scope: $scope,
                        width: '20%',
                        controller: 'ngDialogCtrl',
                        preCloseCallback:closeCallback,
                    }).then(callback);
                }

                //修改导ERP类型
                $scope.oldImpErpType = $scope.nextparam.emscaapportionh.imp_erp_type;
                $scope.impErpTypeChange = function(){
                    var impErpTypeChangeFun = function () {
                         $scope.$emit("changeImpErpType");
                    };
                    var closeFun = function(){
                        $scope.nextparam.emscaapportionh.imp_erp_type = $scope.oldImpErpType;
                    }
                    $scope.openConfirmDialog(impErpTypeChangeFun, closeFun,'更改导ERP类型将会清空预提明细,是否继续?');
                }

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage