我使用HTML5表单字段类型' email'。 Chrome会在提交时验证字段的值,并在出现错误时通过工具提示消息以可视方式通知用户。
与此同时,我将一个JS插件附加到提交按钮,该按钮在提交时禁用它,并将文本更改为"登录..."。
如果出现验证警告/错误,如何捕获事件?
我需要这个才能再次启用“提交”按钮。
修改
所以我找到了一种方法来禁用验证:stackoverflow.com/questions/3090369 / ...但问题仍然存在:是否有办法捕获事件?
答案 0 :(得分:2)
您可以收听invalid
事件或设置oninvalid
属性。当您尝试提交表单时,它会启动,但对元素的验证失败。
function listener(event) {
event.preventDefault(); // prevent the browsers default behavior
console.log(event); // log the generated event
}
var input = document.getElementById('number');
input.addEventListener('invalid', listener);