如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框

Bootstrap的modal组件可以帮助我们创建自定义的alert、confirm和modal对话框。下面是使用Bootstrap的modal组件自定义alert、confirm和modal对话框的完整攻略:

准备工作

在进行下一步之前,需确保已经引入了Bootstrap框架。如未引入,可以在head标签中添加以下代码:

<link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.min.css">
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>

自定义alert对话框

使用Bootstrap的modal组件,可以非常便捷地自定义alert对话框。示例如下:

function showAlert(message) {
  let modal = '<div class="modal fade" id="alertModal" tabindex="-1" role="dialog" aria-labelledby="alertModalLabel" aria-hidden="true">' +
    '<div class="modal-dialog" role="document">' +
    '<div class="modal-content">' +
    '<div class="modal-header">' +
    '<h5 class="modal-title" id="alertModalLabel">提示</h5>' +
    '<button type="button" class="close" data-dismiss="modal" aria-label="Close">' +
    '<span aria-hidden="true">&times;</span>' +
    '</button>' +
    '</div>' +
    '<div class="modal-body">' + message + '</div>' +
    '<div class="modal-footer">' +
    '<button type="button" class="btn btn-primary" data-dismiss="modal">确认</button>' +
    '</div>' +
    '</div>' +
    '</div>' +
    '</div>';

  $('body').append(modal);
  $('#alertModal').modal();
};

函数showAlert接受一个参数message,即为需要显示的提示信息。在函数内部,使用Bootstrap的modal组件创建一个基本的alert对话框,并将message作为对话框的内容。当函数被调用时,动态地添加alert对话框节点到body中,并弹出alert对话框。

自定义confirm对话框

使用Bootstrap的modal组件,也可以很方便地自定义confirm对话框。示例如下:

function showConfirm(message, confirmCallback, cancelCallback) {
  let confirmModal = '<div class="modal fade" id="confirmModal" tabindex="-1" role="dialog" aria-labelledby="confirmModalLabel" aria-hidden="true">' +
    '<div class="modal-dialog" role="document">' +
    '<div class="modal-content">' +
    '<div class="modal-header">' +
    '<h5 class="modal-title" id="confirmModalLabel">提示</h5>' +
    '<button type="button" class="close" data-dismiss="modal" aria-label="Close">' +
    '<span aria-hidden="true">&times;</span>' +
    '</button>' +
    '</div>' +
    '<div class="modal-body">' + message + '</div>' +
    '<div class="modal-footer">' +
    '<button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>' +
    '<button type="button" class="btn btn-primary" id="confirmBtn">确认</button>' +
    '</div>' +
    '</div>' +
    '</div>' +
    '</div>';

  $('body').append(confirmModal);
  $('#confirmModal').modal();

  $('#confirmBtn').on('click', function () {
    if (typeof confirmCallback == 'function') {
      confirmCallback();
    }
    $('#confirmModal').modal('hide');
  });

  $('#confirmModal').on('hidden.bs.modal', function () {
    $('#confirmModal').remove();
  });

  $('#confirmModal .close').on('click', function () {
    if (typeof cancelCallback == 'function') {
      cancelCallback();
    }
  });
};

函数showConfirm接受三个参数,message为需要显示的提示信息,confirmCallback为确认后的回调函数,cancelCallback为取消后的回调函数。在函数内部,使用Bootstrap的modal组件创建一个基本的confirm对话框。当函数被调用时,动态地添加confirm对话框节点到body中,并弹出confirm对话框。同时,在用户点击确认或取消按钮或关闭模态框之后,该对话框会被移除,并且触发对应的回调函数。

自定义modal对话框

使用Bootstrap的modal组件,还可以定制各种modal对话框。示例如下:

<div class="modal fade" id="customModal" tabindex="-1" role="dialog" aria-labelledby="customModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="customModalLabel">自定义模态框</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="关闭">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        这是一个自定义的模态框,可以在此添加任何需要的内容。
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button>
        <button type="button" class="btn btn-primary">保存更改</button>
      </div>
    </div>
  </div>
</div>

在html中定义了一个div,id为customModal,即对应modal对话框的唯一标识符。此时模态框内容为空,可以根据需要添加任何需要的内容。

最后,当需要弹出自定义的modal对话框时,只需要调用以下代码即可:

$('#customModal').modal('show');

此时,自定义的modal对话框就会弹出来了。

完整的示例代码可以在以下CodePen链接中查看:https://codepen.io/yalong888/pen/zYOKRWO 。

阅读剩余 63%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • js实现千位分隔

    js实现千位分隔 在前端开发中,我们常会遇到需要对数值进行千位分隔的情况,即将数值以3位一组的形式进行分隔,并用逗号将其连接起来展示在页面上,以提高数字的可读性。下面,我们来介绍一下如何使用Js实现千位分隔。 方法一:正则表达式 正则表达式是一种强大的文本处理工具,可以用来进行字符串的匹配和替换,也可以用来实现千位分隔。实现方式如下: function fo…

    其他 2023年3月28日
    00
  • Unity初探之黑暗之光(1)

    Unity初探之黑暗之光(1) 黑暗之光是一款Unity引擎制作的第一人称恐怖游戏,本文将为您提供一份完整攻略,包括游戏介绍、操作指南、注意事项、示例说明等。 游戏介绍 黑暗之光是一款以恐怖为主题的第一人称冒险游戏,玩家需要在黑暗的环境中探索、解谜、逃脱。游戏中有各种各样的怪物和陷阱,需要玩家小心应对。同时,游戏还有丰富的剧情和背景故事,让玩家沉浸在恐怖的氛…

    other 2023年5月5日
    00
  • php使用cookie保存登录用户名的方法

    下面就为大家详细讲解一下“PHP使用cookie保存登录用户名的方法”的完整攻略。 什么是cookie? 在开始讲解之前,我们需要先了解一下cookie。cookie,即“小甜饼”,是指服务器发送到用户浏览器,记录用户访问网站的一些信息的文本文件。它可以在浏览器端存储用户信息,如登录状态、用户偏好、购物车信息等等,以便于下一次用户访问网站时可以直接使用这些信…

    other 2023年6月27日
    00
  • 用js对json加密解密

    用 JS 对 JSON 加密解密 在现代开发中,JSON 的使用非常普遍,它是一种轻量级的数据交换格式,被广泛应用于前后端数据传递、API 接口设计、存储文本数据等方面。然而,JSON 本身的文本格式对于敏感信息的保护来说并不太友好。这时,我们需要使用加密算法对 JSON 数据进行加密,以确保敏感信息不会被破解的同时,又可以方便地进行传输和解密。 在本文中,…

    其他 2023年3月28日
    00
  • signalR制作微信墙 开源

    signalR制作微信墙 开源的完整攻略 本文将为您提供signalR制作微信墙开源的完整攻略,包括介绍、方法和两个示例说明。 介绍 SignalR是一个开源的实时Web应用程序框架,可以使用C#或JavaScript编写。微信墙是一种互动性强的活动形式,可以通过SignalR实现实时展示微信消息。 方法 signalR制作微信墙的方法如下: 创建Signa…

    other 2023年5月6日
    00
  • C++ 中快排的递归和非递归实现

    下面是关于C++中快排的递归和非递归实现的详细攻略。 快速排序 快速排序是一种基于分治的排序算法,其主要思想是将待排序序列划分为三部分,左边是小于等于基准值的部分,右边是大于等于基准值的部分,中间是分界点,基准值一般选取序列的第一个数或者随机选取一个数。然后对左右两个部分递归调用快排算法,直到每个小部分只有一个数或为空。 递归实现 递归实现快速排序的核心是 …

    other 2023年6月27日
    00
  • ZeroMQ接口函数之 :zmq_disconnect – 断开一个socket的连接

    ZeroMQ接口函数之 :zmq_disconnect – 断开一个socket的连接 zmq_disconnect(void *socket, const char *endpoint)函数用于断开一个已建立连接的socket。这个函数的调用方式如下: int zmq_disconnect (void *socket, const char *endpoi…

    其他 2023年3月28日
    00
  • MySQL表字段数量限制及行大小限制详情

    MySQL表字段数量限制及行大小限制详情 介绍 MySQL作为流行的关系型数据库管理系统,对于表的字段数量和行大小都做出了限制。本文将详细介绍这些限制规则。 表字段数量限制 MySQL限制表最多可包含的字段数量为4096个。当创建新表时,如果超过了这个限制,会弹出错误提示,例如: CREATE TABLE my_table ( column1 INT, co…

    other 2023年6月25日
    00
合作推广
合作推广
分享本页
返回顶部