验证没有表单标签的 Html 5 输入?

use*_*567 6 html javascript jquery

是否可以在没有表单标签的情况下触发浏览器内置的 html 5 验证过程?如果我的输入控件在不使用表单标签的情况下无效,我想显示浏览器错误消息。我知道我可以使用checkValidity函数检查验证,但如何告诉浏览器触发验证过程?

小智 6

我同意CBroe,我不确定您是否可以在没有实际表单的情况下使用 HTML5 表单验证..我找到了这个链接,它应该对您有用:

/sf/answers/529370761/

您无法触发本机验证 UI,但您可以轻松利用任意输入元素上的验证 API:

$('input').blur(function(event) {
    event.target.checkValidity();
}).bind('invalid', function(event) {
    setTimeout(function() { $(event.target).focus();}, 50);
});
Run Code Online (Sandbox Code Playgroud)

一旦失去焦点,第一个事件就会在每个输入元素上触发 checkValidity ,如果元素无效,则相应的事件将被第二个事件处理程序触发并捕获。这将焦点放回到元素上,但这可能很烦人,我假设您有更好的解决方案来通知错误。这是我上面代码的一个工作示例。如果这没有帮助,也许您可​​以发挥创意并创建一个看起来不像表单的表单。隐藏提交按钮等。这样您就可以利用该功能。

此外,也许可以提供更多关于您要完成的任务的解释。我个人发现这有助于人们提供详细的解决方案。我经常从未考虑过的解决方案。:) 希望这可以帮助!