Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save ramanan12345/665064347b78e3d92ca7 to your computer and use it in GitHub Desktop.

Select an option

Save ramanan12345/665064347b78e3d92ca7 to your computer and use it in GitHub Desktop.
Angular Material Complex Dialog
<html lang="en" ng-app="StarterApp">
<head>
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/angular_material/0.7.1/angular-material.min.css">
</head>
<body layout="column" ng-controller="AppCtrl">
<md-toolbar layout="row">
<h1>Angular Material Complex Dialog</h1>
</md-toolbar>
<div layout="row" flex>
<div layout="column" flex id="content">
<md-content layout="column" flex class="md-padding">
<md-button class="md-primary" ng-click="showDialog($event)">Launch Dialog</md-button>
</md-content>
</div>
</div>
<!-- Angular Material Dependencies -->
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.6/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.6/angular-animate.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.6/angular-aria.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angular_material/0.7.1/angular-material.min.js"></script>
</body>
</html>
var app = angular.module('StarterApp', ['ngMaterial']);
app.controller('AppCtrl', ['$scope', '$mdDialog', function($scope, $mdDialog){
var alert;
$scope.showDialog = showDialog;
$scope.items = [1,2,3];
function showDialog($event) {
var parentEl = angular.element(document.querySelector('md-content'));
alert = $mdDialog.alert({
parent: parentEl,
targetEvent: $event,
template:
'<md-dialog aria-label="Sample Dialog">' +
' <md-content>'+
' <md-list>'+
' <md-item ng-repeat="item in ctrl.items">'+
' <p>{{item}}</p>' +
' </md-item>'+
' </md-list>'+
' </md-content>' +
' <div class="md-actions">' +
' <md-button ng-click="ctrl.closeDialog()">' +
' Close Greeting' +
' </md-button>' +
' </div>' +
'</md-dialog>',
locals: {
items: $scope.items,
closeDialog: $scope.closeDialog
},
bindToController: true,
controllerAs: 'ctrl',
controller: 'DialogController'
});
$mdDialog
.show( alert )
.finally(function() {
alert = undefined;
});
}
$scope.closeDialog = function() {
$mdDialog.hide();
};
}])
.controller('DialogController', function($scope, $mdDialog) {
//alert( this.closeDialog );
//this.closeDialog = $scope.closeDialog;
/*$scope.closeDialog = function() {
$mdDialog.hide();
};*/
});
md-toolbar h1 {
font-size: 1.250em;
font-weight: 400;
margin: auto;
}
md-item p {
margin-top: 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment