我们正在使用HTML表单验证(我们明确不希望使用jQuery验证插件...)。目前我可以在提交后标记无效/空字段。我这样做:
if(document.addEventListener){
document.addEventListener('invalid', function(e){
e.target.className += ' invalid';
}, true);
}
但是在用户向字段输入信息之后,标记仍然存在。我如何删除className,比如说onBlur?
3条答案
按热度按时间ukdjmx9f1#
也许我可以只添加以下CSS类:
至少这看起来有用。
有没有更聪明的解决方案?
mf98qq942#
添加到
invalid
事件处理程序中的blur
事件,如下所示:末尾的
{ once: true }
选项确保一旦发生模糊,事件侦听器就会关闭。brqmpdu13#
浏览器会自动为您添加/删除
:invalid
伪选择器https://developer.mozilla.org/en-US/docs/Web/CSS/:invalid,您只需按照常规大小写(不是无效)和无效大小写(使用:invalid
选择器)来设置表单域的样式即可