Bootstrap 更新 Ajax 记录时成功发出警报

2023-12-07

我想使用引导警报来显示更新现有记录的成功消息。这就是我所拥有的:

索引.php

 <script type="text/javascript">
  $(document).ready(function(){
      $("#submit_button").click( function() {
          $.post( $("#updateunit").attr("action"), 
            $("#updateunit :input").serializeArray(),function(info){ 
              $("#result").html(info); 
          });
      });
      $("#updateunit").submit( function() {
          return false;   
      });
  });
  function clearInput() {
    $("#updateunit :input").each( function() {
      $(this).val('');
    });
}  
<div class="control-group">
                <label class="control-label" for="transaction">Notes</label>
                <div class="controls">
                  <textarea rows="3" columns="10" name="notes"><?php echo $notes; ?></textarea>
                </div>
              </div>
              <div class="control-group">
                <div class="controls">
                <button class="btn btn-custom" type="submit" id="submit_button">Update</button>
                <a href="#" class="back"><button class="btn btn-custom" onclick="goBack()">Back</button></a>
                </div>
              </div>

            </form>
            <div id="result" class="alert alert-success"></div>
          </div>

edit.php

  <?php
include('../../db.php');
if( isset($_POST['reservation_code']) || isset($_POST['transaction_code'])   ){
      $transaction_id = $_POST['transaction_id'];
      $reservation_code = $_POST['reservation_code'];
      $transaction_code = $_POST['transaction_code'];
      $notes = $_POST['notes'];

      $update = $conn->prepare("UPDATE tblunitreservation 
            SET reservation_code = :reservation_code,
            transaction_code = :transaction_code,
            notes = :notes
            WHERE transaction_id = :transaction_id");
      $update->execute(array(':reservation_code' => $reservation_code, 
                        ':transaction_code' => $transaction_code,
                        ':notes' => $notes,
                        ':transaction_id' => $transaction_id));
        echo 'Successfully updated record!';
} else {
        echo 'Required field/s is missing';
}
?>

我希望警报消息位于屏幕中央,但发生的情况是,当我不更新记录时,警报背景可见,然后我仅在消息成功更新出现时更新记录。


如果我没猜错的话,你需要做两件事:

  1. 将警报消息居中。
  2. 仅在单击按钮后才显示警报框。

为此,您可以省略添加alert and alert-successHTML 本身中的类。将 HTML 更改为(以及文本对齐):

<center><div id="result"></div></center>

相反,一旦放置了其中的文本,我们将添加该类,例如:

$("#submit_button").click( function() {
          $.post( $("#updateunit").attr("action"), 
            $("#updateunit :input").serializeArray(),function(info){ 
              $("#result").html(info); 
              //adding class
              $("#result").addClass("alert alert-success");
          });
      });

Fiddle

如果您希望框也居中,请使用引导类:

 $("#result").addClass("alert alert-success offset4 span4");

基于网格系统在 Bootstrap 2.3 中,您可以有 12 列,因此为了使框居中,我们将从左侧留下 4 列,这就是offset4并使盒子的长度为 4 列,这就是span4 does.

Fiddle 2

额外的:

如果我想在超过5时自动关闭警报消息怎么办 秒?并在警报消息中显示关闭按钮

为了获得更流畅的解决方案,您可以执行以下操作:

 //adding a 'x' button if the user wants to close manually
 $("#result").html('<div class="alert alert-success"><button type="button" class="close">×</button>'+info+'</div>');

 //timing the alert box to close after 5 seconds
 window.setTimeout(function () {
     $(".alert").fadeTo(500, 0).slideUp(500, function () {
         $(this).remove();
     });
 }, 5000);

 //Adding a click event to the 'x' button to close immediately
 $('.alert .close').on("click", function (e) {
     $(this).parent().fadeTo(500, 0).slideUp(500);
 });

Fiddle 3

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Bootstrap 更新 Ajax 记录时成功发出警报 的相关文章

  • 将 bootstrap 迁移到 v4 - 弹出窗口不起作用

    我在将 Bootstrap 从版本 3 迁移到版本 4 时遇到问题 问题在于弹出窗口和 popper js 库 每次我将鼠标悬停在某个元素上时 都会收到此错误 未捕获的类型错误 无法读取未定义的属性 indexOf 在 v computeA
  • 如何使用 bootstrap-select 在每个选择选项上添加工具提示

    我正在尝试使用 bootstrap select 将工具提示添加到每个选择选项 当我检查时 似乎 select js 将 select 标签转换为 ul 我不知道这是我的代码不起作用的原因 html div class form group
  • 如何使用 XPath 通过 CSS 类查找元素?

    我的网页里有一个div with a class named Test 我怎样才能找到它XPath 该选择器应该可以工作 但如果将其替换为适合的标记 则会更有效 contains class Test 或者 因为我们知道所寻找的元素是div
  • 单独的数据间隔 bootstrap 轮播 4

    我想为 Bootstrap 4 轮播上的每张幻灯片设置单独的数据间隔 我尝试了一些其他的 javascript 片段 但是它们似乎不适用于我的代码 例如Bootstrap 4 轮播堆栈溢出 https stackoverflow com q
  • setTimeout 用于加载下拉列表中的项目

    我在用setTimeout克服 中提到的缓慢处理脚本警告 禁用 Internet Explorer 中的长时间运行脚本消息 https stackoverflow com questions 4460263 disabling the lo
  • 如何获取输入元素上的 TAB 键事件?

    我尝试在输入字段中按下返回键时触发按钮 这有效 但是 如果我按 Tab 键 则不会触发任何内容 因为未捕获 TAB 键事件 小提琴示例 http jsfiddle net a08t4o7r 例如 这是我的 JQ 代码片段 input nam
  • 重置 div 内容的 css 样式

    有一个用 css 样式定制的 html 页面 我无法更改此 css 该页面的一个标签被设计为动态 html 数据的容器 我怎样才能 重置 这个div的css设置 页面中定义的css样式对此div的内容没有影响 我只能访问动态 html 并且
  • 通过 Javascript 更改 Webkit 属性?

    请帮助我 可能是因为我对 CSS 动画和 Javascript 相当陌生 但我使用的代码应该更改它的属性 当我运行代码时 它会执行代码中的所有其他操作 除了更改所需 div 的 CSS 属性 我已经尝试了所有这四种方法 但似乎都不起作用 它
  • 使用Java获取CSS文件中图像的URL?

    我正在尝试使用 Java 获取远程 CSS 文件中图像 所有 MIME 类型 的 URL 我正在使用 jsoup 来获取 css 的 URL 经过无数个小时的观看CSS解析器 http cssparser sourceforge net 由
  • 为什么该消息没有出现在 Chrome 中的手风琴上方?

    我正在尝试新的 HTML5 验证 当我尝试使用required里面的属性
  • 光标:IE 8 和 9 中的自动行为

    我想要的是为整个正文标记指定cursor pointer 这样页面的背景是可点击的 但我也希望页面的其余部分像以前一样工作 所以我尝试为div设置cursor auto 其中包含这一页 在 FF Chrome 和 safari 中 它工作得
  • 获取输入图像类型选择的图片并加载到图像标签中

    所以 我有一个用于上传 img 文件的输入框 我想要做的是从该数据 或选定的源 中获取数据并将其路由到图像标签的 src 属性中 像这样的东西 http jsfiddle net QC2c4 http jsfiddle net QC2c4
  • JavaScript/jQuery - “$ 未定义 - $function()”错误

    我正在尝试运行 JavaScript jQuery 函数并且Firebug http en wikipedia org wiki Firebug 28software 29得到错误 is not defined function JavaS
  • Jquery 子元素发生变化

    我正在尝试使用 jquery 在子元素 在本例中为 select 更改时触发事件 这是我的 HTML div class row addForm div class col lg 2 col md 2 col sm 3 col xs 6 d
  • HTML/CSS:页面左侧的导航栏

    我发现创建这样具有良好语义的布局很尴尬 左侧是大约 150 像素宽的列 其中包含导航元素 我想将网站这部分的 HTML 放在 HTML 代码的开头 然后有一个简单的方法来强制页面的其余部分不侵占左侧的区域 150 像素列 我考虑过一些选择
  • Jquery Ajax 调用返回 403 状态

    我有一个 jquery Ajax 调用来实现会话的 keepalive 这个 keepAlive 方法将每 20 分钟调用一次 function keepAlive ajax type POST url KeepAliveDummy asp
  • 将 div 附加到另一个 div 的右侧

    我有一个 div 它就像一个容器 里面有 2 个图像 一张图像位于 div 的左侧 另一张图像位于右侧 我的容器是Bootstrap的容器 它们都用 div 包裹 并且div s position is fixed 我的问题是我无法找到要附
  • Dojo“正在加载”消息

    我是 Dojo 新手 所以我需要一些帮助 我的一些链接需要一段时间 当用户单击时 页面开始加载需要几秒钟 我想添加一条 正在加载 消息 我可以用 旧时尚方式 来做 但我想学习新的 更简单 更智能的 Dojo 方式 具体如何工作现在并不重要
  • Fancybox 只能水平响应高内容吗?

    我有一个网站 其中有一些非常高的图像 我希望这些图像能够以响应方式水平响应 但不能垂直响应 如果它们符合浏览器的高度 它们就会变得太小而无法正确查看 有没有一种简单的方法可以实现我所缺少的 请参阅下面的示例 单击第二个缩略图 bswift
  • Yii框架异步请求

    我有一个执行 3 个任务的 ajax 请求 保存模型 数据库 发电子邮件 给出成功或失败的消息 因为这个任务需要的时间太长了 用户最多可以等待 20 秒以获得响应 成功或失败消息 如果用户关闭浏览器 则其会停止用户当前进程的操作之一 这是糟

随机推荐