0
我正在使用jquery在DOM中附加html。该html包含具有控制器及其变量绑定的角度语法。但是一旦添加了html,控制器内初始化的变量就不会填充它们的值,而是将其打印为{{ greeting }}
。使用jquery将DOM附加到html后初始化控制器
JS:
$("#clickDiv").click(function(){
var htmlStr = "<div ng-app='myapp'>"+
"<div ng-controller='mainController'>"+
"<div>{{ greeting.text }}</div>"+
"<div>{{ val }}</div>"+
"</div>"+
"</div>";
$("#right").html($compile(htmlStr));
});
var app = angular.module("myapp", []);
app.controller('mainController', ['$scope', '$compile', function($scope, $compile) {
$scope.greeting = { text: 'Hello' };
$scope.val = 123;
}]);
在上面的代码我收到错误 - $compile is not defined
。
的jsfiddle:http://jsfiddle.net/ashwyn/7v6t6cqm/