HTML
xxxxxxxxxx
1
<button type="button" class="btn btn-primary" data-mdb-ripple-init data-mdb-modal-init
2
data-mdb-target="#user_modal" id="create_user_btn">
3
Create User
4
</button>
5
6
<div class="modal fade" id="user_modal" tabindex="-1" aria-hidden="true">
7
<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
8
<div class="modal-content">
9
<div class="modal-header">
10
<h5 class="modal-title">Create User</h5>
11
<button type="button" class="btn-close" data-mdb-dismiss="modal" aria-label="Close"></button>
12
</div>
13
<div class="modal-body py-2">
14
<form id="user_form" data-method="POST" autocomplete="off" novalidate>
15
<input type="hidden" id="user_id">
16
<div class="row my-2">
17
<div class="col-12">
18
<label for="user_name" class="form-label fw-bold text-dark mb-1">User Name:</label>
19
<input type="text" class="form-control m-0" id="user_name" placeholder="Enter Name"
20
aria-label="User Name" aria-describedby="user_name" autocompleted="">
21
<small class="error-message text-danger" id="user_name_err_msg"></small>
22
</div>
23
</div>
24
<div class="row my-2">
25
<div class="col">
26
<label for="user_environment_select"
27
class="form-label fw-bold text-dark">Environment:</label>
28
<select class="text-capitalize" id="user_environment_select" data-mdb-select-init data-mdb-container="#user_modal"
29
data-mdb-option-height="25"></select>
30
<small class="error-message text-danger" id="user_environment_select_err_msg"></small>
31
</div>
32
</div>
33
</form>
34
</div>
35
<div class="modal-footer py-2">
36
<a class="me-auto d-none cursor-pointer" id="toggle_user_change_password">Change password?</a>
37
<button type="button" class="btn btn-secondary text-capitalize fw-bold" data-mdb-ripple-init
38
data-mdb-dismiss="modal">Cancel</button>
39
<button type="submit" class="btn btn-primary text-capitalize fw-bold float-end" form="user_form"
40
id="user_form_submit_btn" data-mdb-ripple-init>Submit</button>
41
</div>
42
</div>
43
</div>
44
</div>
CSS
1
1
JS
xxxxxxxxxx
1
document.addEventListener("DOMContentLoaded", (event) => {
2
document.getElementById("create_user_btn").addEventListener("click", initializeUserModal)
3
});
4
5
function initializeUserModal() {
6
7
const listAllEnvironments = [
8
{
9
"id": 3,
10
"envid": "7661b31c-c60a-4801-abe5-9e4bf38794a7",
11
"name": "user acceptance testing",
12
"description": "environment for user acceptance testing"
13
},
14
{
15
"id": 1,
16
"envid": "5949f98d-c121-4f92-a01e-b661d14f1030",
17
"name": "development",
18
"description": "environment for developments"
19
},
20
{
21
"id": 2,
22
"envid": "399c2e5e-2ce3-412b-b951-a8e2d1dc8d66",
23
"name": "quality assurance",
24
"description": "environment for quality assurances"
25
}
26
]
27
28
if (!listAllEnvironments.length) {
29
return;
30
}
31
listAllEnvironments.forEach(env => {
32
const option = new Option(env.name, env.envid);
33
document.getElementById("user_environment_select").add(option);
34
});
35
36
}
Console errors: 0