Angular绑定数据时转义html标签

AngularJs在绑定数据时默认会以文本的形式出现在页面上,比如我现在有这样一段代码

<div ng-controller="testCtrl">{{data}}</div>

function testCtrl($scope) {
   $scope.data = '<span class="red">标红</span>';    
}

 

 那么在页面上必然会在也面上直接显示 <span class="red">标红</span>

要想让包含html标签的字符串,能在页面上正常显示,就必须将其转义,此时就要用到angularjs的ng-bind-html,它可以将包含html标签的字符串进行转义然后正确的显示在页面上要使用ng-bind-html必须引入angular-sanitize.min.js这个文件,并在定义模块的时候,在app.js中注入ngSanitize才可以使用ng-bind-html

 
  <script src="lib/angular/angular.js"></script>
  <script src="lib/angular/angular-sanitize.min.js"></script>
    
 <div ng-controller="testCtrl">
   <div ng-bind-html="data"></div>
 </div

function testCtrl($scope) {
    $scope.data = ''<span class="red">标红</span>';//记得要在app.js里面注入ngSanitize
}

  

posted @ 2015-09-12 14:13  BigElephant  阅读(1533)  评论(0编辑  收藏  举报