0

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

看法 :

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

控制器.js

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

如果我在非弹出式 HTML 中有上述视图,则 ng-model 会更新和视图更改。

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

4

1 回答 1

2

我改变了你的文件,为我工作。

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',......
于 2015-04-06T08:31:04.670 回答