AngularJS:html特殊字符未显示

时间:2013-06-22 14:40:16

标签: angularjs

我正在尝试在我的模型中显示一个包含特殊字符的html表示的字符串。不幸的是,它并没有显示出真正的角色,而且我不知道如何让它做到这一点......

这是代码:

<div ng-controller="MyCtrl">
  Hello, {{namea}}!
    <br/>
    &lt;
</div>

<script>
var myApp = angular.module('myApp',[]);

function MyCtrl($scope) {
    $scope.namea = 'Superhero &lt;';
}
</script>

这是输出:

Hello, Superhero &lt;! 
<

here is a jsfiddle for that

2 个答案:

答案 0 :(得分:18)

我今天遇到了这个问题。使用AngularJS,在控制器内的数据中,我试图包含一个带'til'字符串的字符串。我尝试了“Español”以及html表示,但都没有显示所需的输出。

一位同事有帮助地指出unicode有效。所以我试过

{
name : "my site en Espan\u00F1ol"
}

给了我

my site en Español

根据需要。查看http://unicode-table.com/en/

答案 1 :(得分:7)

您可以使用ng-bind-html-unsafe directive

<div ng-controller="MyCtrl" ng-bind-html-unsafe="'Hello,' + namea">
</div>

查看examples in the docsjsfiddle