angularjs – 在$sce.trustAsHtml内呈现指令

前端之家收集整理的这篇文章主要介绍了angularjs – 在$sce.trustAsHtml内呈现指令前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在这里包括一个Plunker: http://plnkr.co/edit/4vqV8toHo0vNjtfICtzI?p=preview

我试图添加一个按钮到DOM,当点击应该执行绑定到它的功能。在这种情况下,应该提醒“测试”。这是代码

调节器

app.controller('MainCtrl',function($scope,$sce) {
        $scope.trustedHtml = $sce.trustAsHtml('<button ng-click="testAlert()">Submit</button>');  

        $scope.testAlert = function () {
            alert('testing')
        };
});

HTML

<body ng-controller="MainCtrl">
    <div ng-bind-html="trustedHtml"></div>
</body>
$ sce.trustAsHtml和ng-bind-html不是要用指令构建HTML。这种技术将无法正常工作。

这是因为角度通过首先编译然后链接起作用。看到conceptual overview的一个很好的解释。

简而言之,当您链接在trustAsHtml中定义的HTML时,编辑ng(并因此了解)ng-click指令为时已晚。

为了动态添加HTML,您应该查看$ compile服务(和/或指令)。 Docs are here

原文链接:https://www.f2er.com/angularjs/144712.html

猜你在找的Angularjs相关文章