你好,关于循环删除错误信息
var submitBtn = document.getElementById('thesubmit');
submitBtn.addEventListener('click', function (event) {
var invalidity_field = forms.querySelectorAll(':invalid'),
//不符合验证信息的↑↑
error_message = forms.querySelectorAll('.error-message'),
//取到所有错误信息↑↑,选择这是为了把之前的错误信息清除掉
parent;
//对错误信息进行循环,点击提交按钮后把错误信息删除掉
for (var i = 0; i < error_message.length; i++) {
error_message[i].parentNode.removeChild(error_message[i]);
}
for (i = 0; i < invalidity_field.length; i++) {
parent = invalidity_field[i].parentNode;
parent.insertAdjacentHTML('beforeend', "<div class='error-message'>" + invalidity_field[i].validationMessage +
'</div>')
//获取错误信息,然后把它插入到input后面
}
//如果有错误信息的话↓↓
if (invalidity_field.length > 0) {
invalidity_field[0].focus();
}
var submitBtn = document.getElementById('thesubmit');
submitBtn.addEventListener('click', function (event) {
var invalidity_field = forms.querySelectorAll(':invalid'),
//不符合验证信息的↑↑
error_message = forms.querySelectorAll('.error-message'),
//取到所有错误信息↑↑,选择这是为了把之前的错误信息清除掉
parent;
//对错误信息进行循环,点击提交按钮后把错误信息删除掉
for (var i = 0; i < error_message.length; i++) {
error_message[i].parentNode.removeChild(error_message[i]);
}
for (i = 0; i < invalidity_field.length; i++) {
parent = invalidity_field[i].parentNode;
parent.insertAdjacentHTML('beforeend', "<div class='error-message'>" + invalidity_field[i].validationMessage +
'</div>')
//获取错误信息,然后把它插入到input后面
}
我想问下,这段代码是先删除了它原有的错误信息,然后添加上一个div来显示新的错误信息,以这个思路触为出发点写的代码。但是当点击提交按钮的时候,删除错误信息的代码在添加错误信息的代码之前,我想问下它们是怎么解析的。
正在回答
如果没有任何的问题,那么是没有任何提示的。
当提交时,有错的时候,那么这个错误内容就有了,修改内容后,再次点提交时,如果写的还有错误,那么就可以清空之前的错误提示,放上去新的错误提示。
我觉得逻辑这个东西,每个人都有不同的想法,你没必要非死磕老师的逻辑,你自己去写个你的想法也是可以的呀
- 参与学习 人
- 提交作业 2198 份
- 解答问题 5012 个
如果你有web端基础,既想进阶,又想进军移动端开发,那就来吧,我们专题为你带来的课程有HTML5、CSS3、移动基础、响应式、bootstrap、less等,让你在前端道路上畅通无阻!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星