【发布时间】:2020-08-09 22:04:58
【问题描述】:
当我按 x 到警报按钮(错误数据输入到表单)以消失错误消息。下次当用户检查他的表单数据并再次出错时,在按钮关闭 x 一次后不会显示警报消息。关于如何解决它的任何想法?
这是警报消息和按钮关闭 x 的代码。
HTML
<div
class="alert alert-danger alert-dismissible fade show hidden"
role="alert"
id="lessData"
>
<strong>Wrong! </strong> Please fill all the required data.
<button
type="button"
class="close"
data-dismiss="alert"
aria-label="Close"
>
x
</button>
</div>
<form id="formRegistration">
<div class="form-group row">
<label for="Age" class="col-md-3 col-lg-3 col-md-3 col-form-label"
>Age <span class="red">*</span></label
>
<div class="col-sm-9 col-lg-9 col-md-9">
<input
type="number"
class="form-control"
id="Age"
placeholder="Please enter your age"
/>
</div>
</div>
<div class="form-group row">
<label for="Gender" class="col-md-3 col-lg-3 col-md-3 col-form-label"
>Gender <span class="red">*</span>
</label>
<div class="col-sm-9 col-lg-9 col-md-9" style="display: inline;">
<select id="Gender" class="form-control">
<option>Male</option>
<option>Female</option>
</select>
</div>
</div>
<div class="form-group row">
<label
for="staticEmail"
class="col-md-3 col-lg-3 col-md-3 col-form-label"
>Email (Username) <span class="red">*</span></label
>
<div class="col-sm-9 col-lg-9 col-md-9">
<input
type="email"
class="form-control"
id="Email"
placeholder="Please enter your email"
/>
</div>
</div>
<div class="form-group row">
<label
for="button"
class="col-md-3 col-lg-3 col-md-3 col-form-label"
></label>
<div class="col-sm-9 col-lg-9 col-md-9">
<button type="button" class="btn btn-secondary" id="button1">
Continue to create your secret key
</button>
</div>
</div>
</form>
JS
function checkDataUserAccount() {
const alert = document.querySelector("#lessData");
const age = document.querySelector("#Age");
const email = document.querySelector("#Email");
const reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
let flag = false;
if (age.value.length === 0 || !age.value.trim()) {
flag = true;
age.style.borderColor = "red";
} else {
age.style.borderColor = "";
}
if (email.value.length === 0 || !email.value.trim()) {
flag = true;
}
if (!email.value.match(reg)) {
email.style.borderColor = "red";
flag = true;
} else {
email.style.borderColor = "";
}
if (flag === true) {
alert.classList.remove("hidden");
return false;
} else {
alert.classList.add("hidden");
return true;
}
}
【问题讨论】:
-
你好 Antira,欢迎来到 SO,你需要发布你的完整代码,一个可运行的 sn-p 会更好,否则只是 JS 或 jquery,很容易知道错误在哪里。所以发布你的完整代码或创建一个可行的sn-p。
-
请张贴表格的其余部分、您的 css 和 javascript
-
@RachelGallen 我上传了html和js代码
-
@Atul 我上传了html js代码
标签: javascript html bootstrap-4 alert