我有以下角度控制器:
.controller('DialogController', function($scope, $mdDialog, $http) {
$scope.status = ' ';
$scope.showAdvanced = function(ev) {
$mdDialog.show({
controller: DialogController,
template: '<md-dialog>' +
' <md-dialog-content>' +
' {{data}}' +
' </md-dialog-content>' +
'</md-dialog>',
parent: angular.element(document.body),
targetEvent: ev,
clickOutsideToClose:true
})
function DialogController($scope, $mdDialog) {
$http.get('http://www.example.com/page/test/test?id=10475').success(function(data) {
$scope.data = data;
$scope.closeDialog = function() {
var mainApp = angular.element(document.body).controller();
$mdDialog.hide();
}
}).error(function(data, status, headers, config) {
console.log("Error in retrieving data from server");
});
}
};
});
我想从Dialog中的网址打开一个页面。我试图获取页面,但我得到了我的页面的完整HTML。如何从$http.get
内的网址($mdDialog
)打开该页面,就好像它像iframe一样?
答案 0 :(得分:1)
将数据绑定添加到模板'dialog1.tmpl.html'中 dialog1.tmpl.html
...
{{serverTemplate}}
...
并在获取标记后设置的控制器中
$http.get('http://www.example.com/page/test/test?id=10475').success(function(data) {
$scope.serverTemplate = data;
...
答案 1 :(得分:1)
我刚刚做了这个并且有效:
<md-dialog-content style="height:568px;width:320px;overflow:scroll;">
<div class="md-dialog-content" id="dialog-content">
<iframe src="http://www.google.com/" frameborder="0" allowfullscreen style="position: absolute;top: 0;left: 0;width: 100%;height: 90%;" align="center"></iframe>
</div>
</md-dialog-content>
iframe中提到的样式将确保您不会在弹出窗口中获得双重或两个滚动条
这里最重要的一点就是永远不要关闭像这样的iframe:<iframe />
相反,总是这样关闭:
<iframe></iframe>