HTML
xxxxxxxxxx
1
<button
2
type="button"
3
class="btn btn-primary"
4
data-mdb-ripple-init
5
data-mdb-modal-init
6
data-mdb-target="#exampleModal"
7
data-mdb-whatever="@mdo"
8
>
9
Open modal for @mdo
10
</button>
11
<button
12
type="button"
13
class="btn btn-primary"
14
data-mdb-ripple-init
15
data-mdb-modal-init
16
data-mdb-target="#exampleModal"
17
data-mdb-whatever="@fat"
18
>
19
Open modal for @fat
20
</button>
21
<button
22
type="button"
23
class="btn btn-primary"
24
data-mdb-ripple-init
25
data-mdb-modal-init
26
data-mdb-target="#exampleModal"
27
data-mdb-whatever="@getbootstrap"
28
>
29
Open modal for @getbootstrap
30
</button>
31
32
<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
33
<div class="modal-dialog">
34
<div class="modal-content">
35
<div class="modal-header">
36
<h5 class="modal-title" id="exampleModalLabel">New message</h5>
37
<button type="button" class="btn-close" data-mdb-ripple-init data-mdb-dismiss="modal" aria-label="Close"></button>
38
</div>
39
<div class="modal-body">
40
<form>
41
<div class="mb-3">
42
<label for="recipient-name" class="col-form-label">Recipient:</label>
43
<input type="text" class="form-control" id="recipient-name" />
44
</div>
45
<div class="mb-3">
46
<label for="message-text" class="col-form-label">Message:</label>
47
<textarea class="form-control" id="message-text"></textarea>
48
</div>
49
</form>
50
</div>
51
<div class="modal-footer">
52
<button type="button" class="btn btn-secondary" data-mdb-ripple-init data-mdb-dismiss="modal">Close</button>
53
<button type="button" class="btn btn-primary" data-mdb-ripple-init>Send message</button>
54
</div>
55
</div>
56
</div>
57
</div>
CSS
1
1
JS
xxxxxxxxxx
1
const exampleModal = document.getElementById('exampleModal');
2
exampleModal.addEventListener('show.mdb.modal', (e) => {
3
// Button that triggered the modal
4
console.log("");
5
const button = e.relatedTarget;
6
// Extract info from data-mdb-* attributes
7
const recipient = button.getAttribute('data-mdb-whatever');
8
// If necessary, you could initiate an AJAX request here
9
// and then do the updating in a callback.
10
//
11
// Update the modal's content.
12
const modalTitle = exampleModal.querySelector('.modal-title');
13
const modalBodyInput = exampleModal.querySelector('.modal-body input');
14
15
modalTitle.textContent = `New message to ${recipient}`;
16
modalBodyInput.value = recipient;
17
})
Console errors: 0