Angular Strap - 模态Html转换不起作用

时间:2014-12-16 16:30:35

标签: javascript angularjs modal-dialog angular-strap

我通过Angular Strap的文档创建了一个模态。但有趣的是,Modal不会转换HTML元素。我已尝试使用和不使用内置的$ sce.trustAsHtml()方法,但模式仍然将html元素也渲染为字符串。 我只将模态用作对象。

这是我的Angular控制器:

var message = "<span>A szelvény sikeresen elmentve!" + " URL: </span><a href='" + url + "'>" + url + "</a>"
$scope.modal = {
  "title": "Mentési eredmény",
  "content": $sce.trustAsHtml(message)
};

这里是激活模态的按钮:

<button type="button" class="btn btn-sm btn-primary" ng-disabled="!savingResult.isSuccess" ng-click="saveSlip()" data-animation="am-fade-and-scale" data-placement="center" bs-modal="modal">
 Mentés
</button>

任何团体都有一个想法,我应该如何使用模态的内容来转换HTML元素而不是呈现为字符串?

因为以下示例不会创建链接html元素,因为它显示为字符串...

1 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,并修复了以下代码:

'use strict';
var app = angular.module('angularApp', ['ngAnimate', 'ngSanitize', 'mgcrea.ngStrap']);
angular.module('angularApp')

.config(function($modalProvider) {
  angular.extend($modalProvider.defaults, {
    html: true
  });
})

.controller('MyController', function($scope, $modal) {
  $scope.modal = {title: 'Title', content: 'Hello Modal<br />This is an html formatted message!'};
});

解决方案是在.config块中将$ modalProvider.defaults调整为html:true。这需要注入ngSanitize扩展名。

希望有所帮助! ;)