首页 > 解决方案 > angular js将字符串转换为HTML并在页面中预览

问题描述

我有 String 包含一些 HTML 标签
,例如:

$scope.string = '<div> <span> some text </span> </div>';

我想将其转换为 html 元素并进行一些更改
,所以我这样做了:

$scope.stringAfterEdit = angular.element($scope.string).find("span").addClass('newClass');

然后我需要在编辑后将我的 html 附加到页面。
所以我尝试了这个:

<div ng-bind-html="stringAfterEdit"></div>

但没有用。
知道该怎么做吗?
提前致谢。

标签: javascriptangularjsstringdom

解决方案


您需要使用$sce

  $scope.string = '<div> <span class="newclass"> some text </span> </div>';

  $scope.trustedHtml = $sce.trustAsHtml($scope.string);

在这里你不能从 css 添加任何类。像newClass

然后是html:

<div ng-bind-html="trustedHtml"></div>

工作插件: http ://plnkr.co/edit/JDEkkG9Wyg12LNXdmjDo?p=preview


推荐阅读