如何自动关闭BootStrap警报?

时间:2016-02-10 19:01:49

标签: javascript php jquery html twitter-bootstrap

<div class="col-sm-6 form-box">
    <div class ="alert alert-danger alert-dismissable">
        <button type="button" class="close" data-dismiss="alert"> <i class="fa fa-times-circle-o"></i> </button>             
           <?php
                foreach ($_SESSION['error'] as $e) {
                    echo $e;
                }
                unset($_SESSION['error']);
           ?>   
    </div>
</div> 

这是我必须使用bootstrap alert打印错误的代码, 但是,即使没有错误(刷新页面后),警报框也会保留在屏幕上。

我尝试使用JavaScript进行此操作,但似乎无效。有人可以帮我解决这个问题。因此,当$_SESSION['error]出现错误时,只会弹出错误警报。

由于

1 个答案:

答案 0 :(得分:2)

有几种方法。

1)如果您想在没有错误的情况下完全排除警报:

<?php if(isset($_SESSION['error']) AND ! empty($_SESSION['error'])): ?>
<div class="col-sm-6 form-box">
        <div class ="alert alert-danger alert-dismissable">
            <button type="button" class="close" data-dismiss="alert"> <i class="fa fa-times-circle-o"></i> </button>  

           <?php
                foreach ($_SESSION['error'] as $e){
                                    echo $e;
                }
                unset($_SESSION['error']);
           ?>   
        </div>
</div> 
<?php endif; ?>

2)只需隐藏警报,但将其保留在页面上。然后你可以用JS隐藏或显示它:

<?php $showAlert = (isset($_SESSION['error']) AND ! empty($_SESSION['error'])) ? '' :'style="display:none;'; ?>
<div class="col-sm-6 form-box">
        <div class ="alert alert-danger alert-dismissable" <?= $showAlert; ?> >
            <button type="button" class="close" data-dismiss="alert"> <i class="fa fa-times-circle-o"></i> </button>  

           <?php
                foreach ($_SESSION['error'] as $e){
                                    echo $e;
                }
                unset($_SESSION['error']);
           ?>   
        </div>
</div> 

只需几个选项,这些可以做得更好。

您还可以使用jQuery隐藏警报:

$('.alert').hide();