表单验证:在输入中按键后删除错误
Form validation: remove error after onkeydown in input
我正在做我的第一个验证,真的很基本。
如果您将"用户名"输入留空,它将用户名输入边框变为红色,并在输入中放置警报图标。
我正在尝试"删除"用户开始输入导致错误的输入后验证失败时添加的内容。
因此,场景是:用户将用户名留空,单击提交,然后用户名输入的边框变为红色,并显示错误图标。然后他们返回并将他们的用户名添加到用户名输入中,在他们在用户名框中键入的第一个字符之后,我希望红色边框和错误图标消失。
但是我的尝试失败了
我的小提琴
.JS
function contactForm() {
var theForm = document.forms.contact;
var errorUsername = document.getElementById('username-error');
var usernameInput = document.getElementById('username');
theForm.onsubmit = function() {
if (theForm.username.value === '') {
errorUsername.style.display = 'block';
usernameInput.className = 'form__input form__input--red rounded-4';
return false;
} else {
theForm.username.onkeydown = function() {
errorUsername.style.display = 'none';
usernameInput.className = 'form__input rounded-4';
};
return true;
};
};
};
contactForm();
.HTML
<form name="contact" action="#" novalidate>
<div class="input__holder">
<input id="username" name="username" type="text" class="form__input rounded-4" placeholder="Username">
<div id="username-error" class="input__error">!</div>
</div>
<div class="input__holder">
<input name="password" type="password" class="form__input rounded-4" placeholder="Password">
</div>
<div class="input__holder">
<input name="email" type="text" class="form__input rounded-4" placeholder="E-mail">
</div>
<button type="submit" id="" class="submit-button rounded-4">Submit</button>
</form>
.CSS
太长了,在小提琴:)
你可以在javascript上添加这样的东西
document.onkeyup = function() {
var errorUsername = document.getElementById('username-error');
var usernameInput = document.getElementById('username');
if (usernameInput.value.length === 0) return;
errorUsername.style.display = 'none';
usernameInput.className = 'form__input rounded-4';
}
这里是小提琴:https://jsfiddle.net/12apmo5j/12/
我认为这可以解决您的问题:)
相关文章:
- PHP 删除错误
- 单选按钮单击删除错误消息 jQuery
- JQuery 验证 - 在表单中添加/删除错误 css 类
- 删除错误.MongooDB + Express.传入的参数必须是 12 个字节的单个字符串或 24 个十六进制字符的字符
- 表单验证:在输入中按键后删除错误
- 如何在调用服务器请求时删除错误
- jQuery 验证错误放置 - 更正后无法删除错误
- 拼接从 AngularJS 中的 ng-repeat 中删除错误的对象
- 如何从电子邮件格式检查器代码中删除错误文本
- 从数组中删除错误的值会留下空值.如何改进我的代码
- 如果onclick按钮,在js中删除错误信息
- 删除错误-无法处理绑定“foreach”
- 不能删除数组项,总是删除错误的项
- jqGrid后删除错误
- 如何根据类名删除错误
- 在弹出窗口中onfocus以删除错误
- 如何隐藏/删除错误信息后显示它给用户后几秒钟在javascript
- Javascript:表单验证-从更正字段中删除错误消息
- Javascript从DOM中删除错误的元素
- 从jQuery validate中重置窗体/删除错误类