ngDialog-弹出窗口未更新范围变量

ngDialog - popup not updating scope variable

本文关键字:更新 范围 变量 窗口 ngDialog-      更新时间:2023-09-26

我正在从ngDialog弹出窗口更新一个范围变量。

视图:

<input type="radio"  name="file_selector" value={{file.id}} ng-model="selected_file.id" ></input>
 

controller.js

 $scope.selected_file   = {'id' : '22'};

如果我在非弹出HTML中有上面的视图,ng模型更新和视图更改。

ngDialog:

$scope.openUploadPopup = function() {
		ngDialog.open({
			template: 'partials/upload.html',
			controller: 'notificationController',
			className: 'ngdialog-theme-default',
			scope: $scope
			});
} 

编辑:Plunker:http://plnkr.co/edit/8TUtwixKwvVaycDuvHd9?p=preview

我更改了你的文件,对我有用。

HTML:

<html>
  <head>
    <script src="https://code.angularjs.org/1.4.0-beta.6/angular.js"></script>
    <script  src="http://likeastore.github.io/ngDialog/js/ngDialog.min.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
  </head>
  <body ng-app="notifications_web_portal" ng-controller="notificationController">
    <div ng-view>
    <h1>Hello Plunker!</h1>
      <span> File selected : {{selected_file.id}}</span>
      <a href='javascript:void(0)' ng-click="openUploadPopup()" >Open Dialog</a>
      </div>
  </body>
</html>

JS:

// Code goes here
var notifApp = angular.module('notifications_web_portal', ['ngDialog']); 
notifApp.controller('notificationController', function($scope, $rootScope, $window , ngDialog) {
  $scope.openUploadPopup = function() {
    ngDialog.open({
      template: '<input type="radio"  name="file_selector" value="87" ng-model="selected_file.id" ></input>',
      controller: 'notificationController',
      plain: true,
      className: 'ngdialog-theme-default',
      scope: $scope
      });
  }
});

完成的更改:

  • 添加plain: true
  • notifApp.controller('notificationController',......