angularjs - 如何在 ng-repeat 中将响应中的 HTML 显示为 HTML
问题描述
我有 n 条来自后端的记录作为数组中的 HTML。我需要在我的视图中将 HTML 响应显示为 HTML。我试过ng-bind-html
了,但它需要最后一个值。需要帮助。
$scope.res= "data": [
{
"jd": "<p>this jd1</p>"
},
{
"jd": "<li>this jd2</li>"
},
{
"jd": "<ul>this jd3</ul>"
},
{
"jd": "<p>this jd4</p>"
}
]
}
html:
<div ng-repeat="item in res">
<div ng-bind-html ="item.jd">
</div>
解决方案
您可以使用 $sce.trustAsHtml。请参阅此处的文档。
你可以做的是:
在你的控制器中添加这一行:
$scope.trustAsHtml = $sce.trustAsHtml;
并像这样更新您的 HTML:
<div ng-bind-html ="trustAsHtml(item.jd)">
请注意,您可能应该开始使用 Angular 6 而不是 AngularJS
推荐阅读
- git - Git-config设置为git stash指定--include-untracked?
- spring-boot - 客户端可以在没有证书的情况下使用 RestTemplate 向安全 SSL 服务器发出请求吗?
- python - 如何声明与数据类类型相同的python数据类成员字段
- python - 错误 13 权限被拒绝,Pycharm 说我的 SDK 似乎无效
- g1ant - 为什么我的 G1ANT 软件的插件列表中没有插件 ocrtesseract?
- android - 向上滚动时隐藏底部导航 向下滚动时显示
- swift - shared() 运算符超时
- python - 比较两个 txt.files 的内容以查找已删除的行或 python 中的更改
- javascript - 反应功能组件中的事件监听器
- javascript - 尝试更改烧瓶应用程序的 CSS 中的背景渐变