javascript - 点击select框选项 弹出ngDialog 点击取消的时候 关闭弹出框 希望select框的值不变
问题描述
标题文字 ##下边是我的代码,点击取消后,select框的值依然会改变//views< select 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, ’更改导类型将会清空明细,是否继续?’);}
问题解答
回答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类型将会清空预提明细,是否继续?’);}
相关文章:
1. android - 安卓做前端,PHP做后台服务器 有什么需要注意的?2. mysql - SQL语句可以提供“查询表,并至第100条结果为止”吗?3. python - xpath提取网页路径没问题,但是缺失内容?4. javascript - 大家都在用vue来做单页项目,那vue是否可以在传统多页项目上?5. python - 子进程执行完成为僵尸进程,怎么解决6. java中返回一个对象,和输出对像的值,意义在哪儿7. javascript - 给某个类添加一个伪类,这个类有click事件,现在我点击伪类也触发了click事件8. docker不显示端口映射呢?9. node.js - JavaScript的一个不能理解的地方10. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?
