我试图在模板中插入一个包含一些标记的字符串.
在控制器中:
$scope.message =“Hello moto< a ui-sref ='home.test'>点击< / a>”;
模板:
<div ng-bind-html="message.text"></div>
它表现为:
<div ng-bind-html="message.text" <div="" class="ng-binding">Hello moto <a>click</a></div>
尝试使用以下过滤器也没有帮助;对于任何一个评论的选择,文本都被简单地转义:
angular.module('test-filters',['ngSanitize']) .filter('safe',function($sce) { return function(val) { return $sce.trustAsHtml(val); //return $sce.trustAsUrl(val); //return $sce.trustAsResourceUrl(val); }; });
如何插入我的字符串而不转义它也不剥离属性?
编辑:Plunker http://plnkr.co/edit/H4O16KgS0mWtpGRvW1Es?p=preview(更新为sylwester的版本,参考ngSanitize
让我们来看看这里
http://jsbin.com/faxopipe/1/edit它现在排序.
它没有工作,因为标签“ui-sref”内有另一个指令,
所以你必须使用$sce服务.
它没有工作,因为标签“ui-sref”内有另一个指令,
所以你必须使用$sce服务.
$scope.to_trusted = function(html_code) { return $sce.trustAsHtml(html_code);
并认为:
<p ng-bind-html="to_trusted(message)"></p>