【问题标题】:Bootstrap alert dialog is not displayed further after auto-close自动关闭后,引导程序警报对话框不再显示
【发布时间】:2014-06-21 16:23:08
【问题描述】:

我正在使用引导警报来显示应用程序消息。我使用 $timeout 函数自动关闭警报。

$scope.alerts.push({header: header, msg: message, type: type});
            $timeout(function() {
                $scope.alerts.splice(0, 1);
            }, 3000);

首次显示引导警报并在 3 秒内自动关闭。之后,它不会显示应用程序中执行的任何操作的错误/信息消息。有什么我需要补充的吗?我是角度 js 的新手。请帮忙。

【问题讨论】:

    标签: javascript angularjs twitter-bootstrap angular-ui-bootstrap


    【解决方案1】:

    当你点击Close时,Bootstrap alert 会从 DOM 中移除,如果你希望 alert 留在 DOM 中并被重复使用,你需要使用 close.bs.alert 事件。

    <div class="alert alert-warning collapse" id="my-alert">
            <a href="#" data-dismiss="alert" class="close">&times;</a>
            <p>My alert.</p>
    </div>
    
    var alert = $("#my-alert");    
    alert.on("close.bs.alert", function () {
        alert.hide(); //hide the alert
        return false; //don't remove it from DOM
    });
    

    通过#alerts-usage了解更多信息。

    【讨论】:

      【解决方案2】:

      我认为您正在投票$timeout。希望对你有帮助

      在 HTML 中

      <alert ng-repeat="alert in alerts" type="{{alert.type}}" close="closeAlert($index)">{{alert.msg}}</alert>
        <button class='btn btn-default' ng-click="addAlert()">Add Alert</button>
      

      在控制器中

      $scope.alerts = [];
      
        $scope.addAlert = function() {
          $scope.alerts.push({msg: 'Another alert!'});
          $scope.autoHide();
        };
        $scope.autoHide =function(){
                        $timeout(function() {
                              $scope.alerts.splice(0, 1);
                        }, 3000);
        }
      
        $scope.closeAlert = function(index) {
          $scope.alerts.splice(index, 1);
        };
      

      【讨论】:

      • {{alert.header}}
        {{alert.msg}}
        这是视图。我试图在控制器中添加 autohide()。问题仍然存在
    • 你能不能给你的代码一个小提琴或 plunker。
    • 猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-30
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      相关资源
      最近更新 更多