使用angularjs加载html页面

时间:2013-12-04 12:01:44

标签: html angularjs

是Angular的新手并寻求你的帮助。是否可以通过AngularJS中的控制器显示/加载HTML页面(我不想重定向到页面)?

详细说明:我有一个显示项目列表的应用程序页面,比方说。每个项目都有一个“视图”图标,点击它时会显示该项目的详细视图。

    <ul class="list" data-ng-controller="check">
       <li>Item 1
           <em class="view"></em>
       </li>
       <li>Item 2
           <em class="view"></em>
       </li>
    </ul>

    myapp=angular.module("MyApp",[]);
    myapp.controller("check",['$scope',function($scope){
       $scope.somefunction = function(){how to ask it to load an html page i got ??};
    }]);

谢谢!

1 个答案:

答案 0 :(得分:0)

ng-include是实现这一目标的正确方法。 http://docs.angularjs.org/api/ng.directive:ngInclude

如果你真的不想这样做,你可以使用$ http获取页面,并使用$ sce标记它是安全的。

<div ng-bind-html="trustedHtml"></div>

myapp.controller("check",['$scope', '$http', '$sce',
   function ($scope, $http, $sce) {

      // Fetch contents using $http. 
      $http({method: 'GET', url: '/someUrl'}).success(function (contents) {
           $scope.trustedHtml = $sce.trustAsHtml(contents);  
      });
   }
]);