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 }
时间: 2024-10-11 20:37:02