我想从代码中使用ng-include指令。像
这样的东西var html = '<div ng-include="\'myTemplate.html\'"></div>';
$compile(html)($scope);
angular.element(document.getElementById('myDiv')).append(html);
但是,这个没有按预期工作。任何人都可以解释如何正确实现这一目标吗?
答案 0 :(得分:0)
如果你想在你的网页中加入html,你应该使用ng-bing-html代替:
HTML
<div id="myDiv" ng-bind-html="template"></div>
JS
.controller('name', function($scope, $http, $sce, ...) {
$http.get('myTemplate.html').success(function(template) {
$scope.template = $sce.trustAsHtml(template);
});
});
答案 1 :(得分:0)
更改陈述的顺序。
var html = '<div id="dynamicID" ng-include="\'myTemplate.html\'"></div>';
var ngEl = angular.element(document.getElementById('myDiv'));
ngEl.append(html);
$compile(ngEl.find('#dynamicID'))($scope);