首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >包括链接在角-用户界面引导警报?

包括链接在角-用户界面引导警报?
EN

Stack Overflow用户
提问于 2013-07-04 17:36:11
回答 2查看 9.9K关注 0票数 7

如何在角用户界面引导警报中包括链接?

企图:

柱塞实例

代码语言:javascript
代码运行次数:0
运行
复制
<div ng-controller="AlertDemoCtrl">
    <alert ng-repeat="alert in alerts" type="alert.type" close="closeAlert($index)">{{alert.msg}}</alert>
    <button class='btn' ng-click="addAlert()">Add Alert</button>
</div>

脚本

代码语言:javascript
代码运行次数:0
运行
复制
function AlertDemoCtrl($scope) {
  $scope.alerts = [
    { type: 'error', msg: 'Oh snap! Change a few things up and try submitting again.' }, 
    { type: 'success', msg: '<a href="">Well done!</a> You successfully read this important alert message.' }
  ];

  $scope.addAlert = function() {
    $scope.alerts.push({msg: "Another alert!"});
  };

  $scope.closeAlert = function(index) {
    $scope.alerts.splice(index, 1);
  };

}
EN

回答 2

Stack Overflow用户

发布于 2013-07-04 20:03:34

在AngularJS表达式中嵌入HTML通常不是最好的方法,因为这样就无法计算AngularJS指令。

不管怎么说,回到你的问题-有很多方法来解决你的问题。如果您在显示链接之后,最简单的方法是使用ng-bind-html指令(http://docs.angularjs.org/api/ngSanitize.directive:ngBindHtml):

代码语言:javascript
代码运行次数:0
运行
复制
  <alert ng-repeat="alert in alerts" type="alert.type" close="closeAlert($index)">
    <span ng-bind-html="alert.msg"></span>
  </alert>

工作装置:http://plnkr.co/edit/Ftab0xtcelXcHSZbFRxs?p=preview

票数 21
EN

Stack Overflow用户

发布于 2014-11-20 19:04:46

以上所需的答案需要更多的东西才能为我工作。

我的警报是这样的:

代码语言:javascript
代码运行次数:0
运行
复制
$scope.alerter.add({
    type: "danger",
    msg: "<strong>ERROR:</strong> Unable to load credit care plan. Please contact your administrator."
});

完成上述操作后,我开始得到以下错误:

代码语言:javascript
代码运行次数:0
运行
复制
Error: [$sce:unsafe]

所以我继续,给我做了一个过滤器来绕过$sce安全。我把过滤器命名为不安全的:

代码语言:javascript
代码运行次数:0
运行
复制
.filter('unsafe', function($sce) {
    return function(value) {
        if (!value) { return ''; }
        return $sce.trustAsHtml(value);
    };
})

然后像这样使用过滤器:

代码语言:javascript
代码运行次数:0
运行
复制
<alert ng-repeat="alert in alerts" type="{{alert.type}}" close="closeAlert($index)">
  <span ng-bind-html="alert.msg | unsafe"></span>
</alert>

我的closeAlert函数如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
$scope.closeAlert = function(index) {
    $scope.alerts.splice(index, 1);
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17475728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档