将数据传递到动态AngularJS控制器

时间:2013-12-11 12:05:20

标签: javascript angularjs

让我们假设我们有一个容器,我们将添加动态html(带angular指令)

<div id="divContent"></div>
 
document.getElementById("divContent").innerHTML = '<div id="divTest" ng-controller="TestCtrl">{{test}}</div>';

这是一些虚拟控制器的代码:

angular.module("TestApp", []).controller("TestCtrl", function($scope)
                                                       {
                                                           $scope.test = "a";
                                                       });

要初始化Angular,我们将使用bootstrap

angular.bootstrap(document.getElementById("divTest"), ["TestApp"]);

所以问题是如何传递test参数显示b而不是a

以下是jsfiddle

1 个答案:

答案 0 :(得分:0)

使用compile

$("#divContent").html(
      $compile(
        "<div id='divTest'>{{test}}</div>"
      )(scope)
);

但上述不会起作用,因为控制器可能不可用。

做类似的事情:

并将$ compile注入您的控制器。