在Angular Scope Data中使用HTML标记
Using HTML tags in Angular Scope Data
在我的Angular应用程序中,我有一些数据需要包含html标记,并且我在确保它被转义时遇到了一些问题。
$scope.groups = [
{
'name': 'min',
'item': '<h1>This is some awsome H1</h1><ul><li>yup></li></ul>',
},
{
'name': 'min',
'item': '<h1>This is some awsome H1</h1><ul><li>yup></li></ul>',
},
{
'name': 'min',
'item': '<h1>This is some awsome H1</h1><ul><li>yup></li></ul>',
},
{
'name': 'min',
'item': '<h1>This is some awsome H1</h1><ul><li>yup></li></ul>',
}
];
这是我的html
<div ng-repeat="group in groups">
<li>{{group.name}}</li>
<li>{{group.item}}</li>
</div>
我试着只包括angular的一些ng-sanitize
,但我只看到了它是单个对象而不是数组的例子。
参见此处
我试图将ng-bind-html="groups"
添加到主div
,但我的数据显示为[object Object]
。
有什么想法吗?感谢您的帮助!
ngBindHtml
指令接受一个包含HTML的字符串,并且应该直接在应该呈现该HTML字符串的标记上使用。与其在容器上使用,不如直接在第二个<li>
上使用,如下所示:
<div ng-repeat="group in groups">
<li>{{group.name}}</li>
<li ng-bind-html="group.item"></li>
</div>
@javaCoin创建了一个Plunker来说明这一点;我们不要浪费它,把它粘贴在这里:http://plnkr.co/edit/PFaxHqpyQvWqln5ABHRc?p=preview
ng-bind-html在您想要代码的特定项目上。
因此,您的示例变成:
<div ng-repeat="group in groups">
<li>{{group.name}}</li>
<li ng-bind-html="group.item"></li>
</div>
http://plnkr.co/edit/CO5WUCgBnOEJrVoKKrEE?p=preview显示了一个快速而肮脏的例子。
相关文章:
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- HTML标记在脚本标记中工作
- 是否可以添加这行“;“照原样”;在HTML标记中
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 如果匹配项在特定的html标记中,则跳过regex匹配
- 使用 Pure JS 更改 HTML 标记名称
- 如何使用javascript选择字符串的部分,添加html标记或删除部分
- HTML标记,包含带引号的JavaScript代码中的引号
- 如何在JavaScript中创建打字机效果,这将考虑html标记规则
- 将c#视图模型转换为javascript模型时转义HTML标记
- Regex剥离具有特定属性的html标记
- 如何在不创建格式错误的HTML标记的情况下分解字符串
- HTML 标记未在 AngularJS ckEditor 中应用,而是在 Ediator 中显示 HTML 元素标记代码
- 如何在angularJS中运行for循环而不使用html标记
- Riot 每个构建 HTML 标记
- 用HTML标记+ 替换关闭的HTML标记
- 存储包含html标记的文本
- Regex以转义HTML标记
- 在html标记中序列化javascript代码
- JS来显示HTML标记