2014-07-12 07:34:47 +02:00
---
2015-08-15 07:45:55 +02:00
layout: docs
2014-07-12 07:34:47 +02:00
title: Alerts
2016-10-03 03:19:47 +02:00
description: Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages.
2015-08-06 02:47:45 +02:00
group: components
2020-11-04 15:39:29 +01:00
aliases:
2019-01-30 20:52:42 +01:00
- "/components/"
2020-05-12 18:04:19 +02:00
- "/docs/4.5/components/"
2017-05-28 08:01:14 +02:00
toc: true
2014-07-12 07:34:47 +02:00
---
2015-04-18 04:51:15 +02:00
## Examples
2015-04-17 01:56:40 +02:00
2017-08-17 18:01:51 +02:00
Alerts are available for any length of text, as well as an optional dismiss button. For proper styling, use one of the eight **required** contextual classes (e.g., `.alert-success` ). For inline dismissal, use the [alerts jQuery plugin ](#dismissing ).
2014-07-12 07:34:47 +02:00
2020-11-04 15:39:29 +01:00
{{< example > }}
{{< alerts.inline > }}
{{- range (index $.Site.Data "theme-colors") }}
< div class = "alert alert-{{ .name }}" role = "alert" >
A simple {{ .name }} alert—check it out!
< / div > {{- end -}}
{{< / alerts.inline > }}
{{< / example > }}
2014-07-12 07:34:47 +02:00
2020-11-04 15:39:29 +01:00
{{< callout warning > }}
{{< partial " callout-warning-color-assistive-technologies . md " > }}
{{< / callout > }}
2016-02-17 11:22:48 +01:00
2014-07-12 07:34:47 +02:00
### Link color
Use the `.alert-link` utility class to quickly provide matching colored links within any alert.
2020-11-04 15:39:29 +01:00
{{< example > }}
{{< alerts.inline > }}
{{- range (index $.Site.Data "theme-colors") }}
< div class = "alert alert-{{ .name }}" role = "alert" >
A simple {{ .name }} alert with < a href = "#" class = "alert-link" > an example link< / a > . Give it a click if you like.
< / div > {{ end -}}
{{< / alerts.inline > }}
{{< / example > }}
2015-03-31 05:50:34 +02:00
2016-02-04 05:43:12 +01:00
### Additional content
2017-01-16 06:33:32 +01:00
Alerts can also contain additional HTML elements like headings, paragraphs and dividers.
2016-02-04 05:43:12 +01:00
2020-11-04 15:39:29 +01:00
{{< example > }}
2016-02-04 05:43:12 +01:00
< div class = "alert alert-success" role = "alert" >
< h4 class = "alert-heading" > Well done!< / h4 >
< p > Aww yeah, you successfully read this important alert message. This example text is going to run a bit longer so that you can see how spacing within an alert works with this kind of content.< / p >
2017-01-16 06:33:32 +01:00
< hr >
2016-09-09 07:16:28 +02:00
< p class = "mb-0" > Whenever you need to, be sure to use margin utilities to keep things nice and tidy.< / p >
2016-02-04 05:43:12 +01:00
< / div >
2020-11-04 15:39:29 +01:00
{{< / example > }}
2016-02-04 05:43:12 +01:00
2015-04-18 04:51:15 +02:00
### Dismissing
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
Using the alert JavaScript plugin, it's possible to dismiss any alert inline. Here's how:
- Be sure you've loaded the alert plugin, or the compiled Bootstrap JavaScript.
2020-11-04 15:39:29 +01:00
- If you're building our JavaScript from source, it [requires `util.js` ]({{< docsref "/getting-started/javascript#util" >}} ). The compiled version includes this.
2015-04-18 04:51:15 +02:00
- Add a dismiss button and the `.alert-dismissible` class, which adds extra padding to the right of the alert and positions the `.close` button.
- On the dismiss button, add the `data-dismiss="alert"` attribute, which triggers the JavaScript functionality. Be sure to use the `<button>` element with it for proper behavior across all devices.
2016-10-28 00:13:17 +02:00
- To animate alerts when dismissing them, be sure to add the `.fade` and `.show` classes.
2015-04-18 04:51:15 +02:00
You can see this in action with a live demo:
2015-03-31 05:50:34 +02:00
2020-11-04 15:39:29 +01:00
{{< example > }}
2016-10-28 00:13:17 +02:00
< div class = "alert alert-warning alert-dismissible fade show" role = "alert" >
2017-08-25 03:11:36 +02:00
< strong > Holy guacamole!< / strong > You should check in on some of those fields below.
2015-03-31 05:50:34 +02:00
< button type = "button" class = "close" data-dismiss = "alert" aria-label = "Close" >
< span aria-hidden = "true" > × < / span >
< / button >
< / div >
2020-11-04 15:39:29 +01:00
{{< / example > }}
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
## JavaScript behavior
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
### Triggers
2015-03-31 05:50:34 +02:00
Enable dismissal of an alert via JavaScript:
2020-11-04 15:39:29 +01:00
```js
2017-11-09 06:51:19 +01:00
$('.alert').alert()
2020-11-04 15:39:29 +01:00
```
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
Or with `data` attributes on a button **within the alert** , as demonstrated above:
2015-03-31 05:50:34 +02:00
2020-11-04 15:39:29 +01:00
```html
2015-03-31 05:50:34 +02:00
< button type = "button" class = "close" data-dismiss = "alert" aria-label = "Close" >
< span aria-hidden = "true" > × < / span >
< / button >
2020-11-04 15:39:29 +01:00
```
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
Note that closing an alert will remove it from the DOM.
2015-03-31 05:50:34 +02:00
### Methods
2015-08-11 01:36:44 +02:00
| Method | Description |
| --- | --- |
| `$().alert()` | Makes an alert listen for click events on descendant elements which have the `data-dismiss="alert"` attribute. (Not necessary when using the data-api's auto-initialization.) |
2016-10-28 00:13:17 +02:00
| `$().alert('close')` | Closes an alert by removing it from the DOM. If the `.fade` and `.show` classes are present on the element, the alert will fade out before it is removed. |
2017-10-16 16:51:42 +02:00
| `$().alert('dispose')` | Destroys an element's alert. |
2015-03-31 05:50:34 +02:00
2020-11-04 15:39:29 +01:00
```js
$('.alert').alert('close')
```
2015-03-31 05:50:34 +02:00
### Events
Bootstrap's alert plugin exposes a few events for hooking into alert functionality.
2015-08-11 01:36:44 +02:00
| Event | Description |
| --- | --- |
2020-11-18 20:29:41 +01:00
| `close.bs.alert` | This event fires immediately when the `close` instance method is called. |
2015-08-11 01:36:44 +02:00
| `closed.bs.alert` | This event is fired when the alert has been closed (will wait for CSS transitions to complete). |
2015-03-31 05:50:34 +02:00
2020-11-04 15:39:29 +01:00
```js
2015-03-31 05:50:34 +02:00
$('#myAlert').on('closed.bs.alert', function () {
2019-02-10 21:25:51 +01:00
// do something...
2015-03-31 05:50:34 +02:00
})
2020-11-04 15:39:29 +01:00
```