到目前为止,我已经想到了……
function checkform() { var /* all the elements in the form here */ if (inputElement.validity.valid == 'false') { /* Submit the form,this will cause a validation error,and HTML5 will save the day... */ } else { navigateNextStep(); } }
这是我到目前为止所提出的逻辑,而且有点后悔,因为我提交知道有一个无效值,因此触发验证提示……
我对上述逻辑的唯一问题是,我有大约7-8个输入元素,并且我发现执行以下操作的选项,而不是’脏’:
var inputs = document.getElementsByTagName("INPUT"); if (!inputs[0].validity.valid && !inputs[1].validity.valid && ...)
想法?
解决方法
不过,我不确定你是如何期望提交表单来触发浏览器的验证用户界面的.无论验证状态如何,调用formEl.submit()似乎都会导致提交.这在The H5F project page的底部注明,其中说:
Safari 5,Chrome 4-6 and Opera 9.6+ all block form submission until all form control validation
constraints are met.Opera 9.6+ upon form submission will focus to the first invalid field
and bring up a UI block indicating
that it is invalid.Safari 5.0.1,and Chrome 7 have removed form submission blocking if a form is invalid,most likely due to legacy forms Now not submitting on older sites.
原文地址:https://www.jb51.cc/js/155783.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。