【问题标题】:How to close BootStrap alert automatically?如何自动关闭 BootStrap 警报?
【发布时间】:2016-02-10 19:01:48
【问题描述】:
<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> 

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

我曾尝试使用JavaScript 进行此操作,但它似乎不起作用。有人可以帮我解决这个问题。这样只有在$_SESSION['error] 出现错误时才会弹出错误警报。

谢谢

【问题讨论】:

  • 抛出一个 if 语句来检查会话是否未定义或其他什么

标签: javascript php jquery html twitter-bootstrap


【解决方案1】:

有几种方法。

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(); 

【讨论】:

  • "GRR 为什么代码不显示?" - 我编辑了。你有一大堆&gt;,但不确定你是否想做一个2)。项目符号选项会打乱代码缩进。
  • 是的,除非将代码放在引号块中,否则我无法显示代码。谢谢
  • 不客气。我也不知道有些人是如何使用项目符号选项做到这一点的。
猜你喜欢
  • 2011-11-30
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
  • 2011-12-01
  • 2017-09-01
  • 1970-01-01
  • 2014-05-30
  • 2014-04-10
相关资源
最近更新 更多