【发布时间】:2016-09-07 12:54:34
【问题描述】:
我有一个输入框,我需要加载一个正在输入中的 url。然后单击按钮后,我需要 iframe 来加载页面。我尝试在控制器中添加 $sce,如果它只进行硬编码,它就可以工作。这是我到目前为止的代码。
带按钮的输入框
<input type="text" class="form-control" id="basic-url" aria-describedby="basic-addon3" ng-model="url" />
<span class="input-group-btn">
<button class="btn btn-primary btn-lg" type="button" ng-click="go(url)">Go!</button>
</span>
控制器
app.controller('browser', [
'$scope',
'$http',
'contentService',
'arrayService',
'ngAudio',
'$sce',
function($scope, $http, contentService, arrayService, ngAudio, $sce) {
contentService.then(function(data) {
$scope.data = data; // access all data
$scope.links = $sce.trustAsResourceUrl("http://www.yelp.com/");
$scope.go = function(url){
$scope.links = url;
console.log('links', $scope.links);
return $scope.links;
};
});
}
]);
【问题讨论】:
-
为什么
$scope.go函数嵌套在contentService的.then方法里面?你在哪里设置 iframe 的ng-src属性? -
我在视图中设置。
标签: javascript html angularjs iframe