【发布时间】:2014-05-14 07:18:21
【问题描述】:
我们最近开始在表单上添加 HTML 5 客户端验证。
我遇到的一个有趣的副作用是这个。对于某些表单,我们会在提交表单时创建一个带有加载指示器的叠加层。这样做是为了保护表单免受多次提交。它看起来也很酷。
但是,当 HTML 5 客户端验证事件发生时,例如需要,触发提交处理程序,并且覆盖显示,但客户端验证的 b/c 表单实际上并未提交并且您被卡住了。
现在,我想避免在 Javascript 中重做这种客户端验证。是否有任何类型的事件表明发生了客户端验证异常?这样,我可以根据该事件禁用覆盖。
【问题讨论】:
-
您是在调用验证还是第三方库?事件处理程序按添加到元素的顺序调用,因此您可以先调用验证,然后在发现问题时在事件上调用 stopImmediatePropagation 和 preventDefault。这应该停止调用添加覆盖的处理程序。有关更多详细信息,请参阅 jQuery 文档api.jquery.com
-
你误会了。我说的是浏览器端 HTML 5 验证。它没有被调用。您在输入标签定义中指定它。
-
我想这可能是我的问题的答案stackoverflow.com/questions/6871428/…
标签: javascript html validation