我有这个用离子填充的HTML列表:
<div class="list">
<div class="card" ng-repeat="item in eventsDay19">
<div class="item item-divider">
<b>{{item.eventHour}}</b> - <span style="font-style: italic;font-weight: bold;">{{item.eventTitle}}</span>
</div>
<div class="item item-text-wrap">
{{item.eventPlace}}<br />{{item.eventText}}
</div>
</div>
</div>
它来自我的JS控制器中定义的对象,如下所示:
$scope.eventsDay19 = [{ eventTitle: 'Pregón Anunciador de la Feria 2016 ', eventHour: '21:00', eventText: 'A cargo del deportista paralímpico D.XXX-XXXX', eventPlace: 'Parque de las Almadrabillas' }];
我想要使用粗体字母(更具体地说,'D.XXX-XXXX')格式化'eventText'成员的一部分。其余的应该是普通文本。我尝试在子字符串周围添加CSS和HTML格式标签,但没有任何作用。我也尝试使用带有相同结果的bold()JS函数......
正如我所看到的,JS字符串上的格式标签不会被翻译成HTML代码。你能否指点我这个机制的内部,以更好地理解JS和HTML在这种情况下的关系?。
提前致谢,
何
答案 0 :(得分:2)
您可以使用ngBindHtml
指令
注入ngSanitize
,如下所示:
angular.module('moduleName', ['ngSanitize'];
然后,作为示例,您可以拥有:
var str = "Aaa <strong>D.XXX-XXXX</strong>";
查看强>:
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-sanitize/1.5.8/angular-sanitize.min.js"></script>
<span ng-bind-html="str"></span>