在控制器中我有一个变量叫$ scope.question。
$scope.question = "Hi this is <br/> book";
在html页面中访问此变量,如{{question}}。
<div class="question">
1. {{question}}
</div>
我希望输出带换行符...但它显示为字符串...如何解析html标签。
答案 0 :(得分:11)
您应该使用ng-bind-html
指令。要利用它,你需要:
//1. given
.controller('AppController', [
function() {
$scope.SomeHtml = '<b>some html</b>';
//2. use ng-bind
<div ng-bind-html="SomeHtml"></div>
答案 1 :(得分:0)
如果我们的文本包含一些html内容,那么我们必须在angular js中使用ng-bind-html指令,否则我们的html内容将不会被解析并照原样呈现。
示例:
如果我们的文字是
$scope.Val = "<span> Something </span>"
,我们将此文本写在大括号内,如下所示:
<div> {{Val}} </div>
然后将按原样呈现文本,即
因此,为了解析此html内容,我们必须将其编写如下:
<div ng-bind-html="Val"></div>
现在,文本将呈现为Something。
注意:确保在您的应用程序中包括ngSanitize模块,例如:
var app = angular.module('myApp', ['ngSanitize']);
希望有帮助...!