HTML5 checkValidity 表示空输入有效
HTML5 checkValidity says an empty input is valid
给定以下文档:
<input pattern="[a-z]"/>
不填写输入,运行:
document.querySelector('input').checkValidity()
Returns true
.
既然空输入不匹配 [a-z]
,为什么 HTML5 checkValidity() 返回 true
?
使用 required
以便不验证空输入。
<input pattern="[a-z]" required />
您可以通过添加检查以确保您的值不为空来避免必须添加 required
。这很明显,但我想我会在这里提到它,因为我没有发布这个输入并且添加 required 会强制用户输入一个值,这不是我需要的。
if (myCustomJavaScript.notFalsy($input.val()) && $input[0].checkValidity()) {
// Submit AJAX request.
}
给定以下文档:
<input pattern="[a-z]"/>
不填写输入,运行:
document.querySelector('input').checkValidity()
Returns true
.
既然空输入不匹配 [a-z]
,为什么 HTML5 checkValidity() 返回 true
?
使用 required
以便不验证空输入。
<input pattern="[a-z]" required />
您可以通过添加检查以确保您的值不为空来避免必须添加 required
。这很明显,但我想我会在这里提到它,因为我没有发布这个输入并且添加 required 会强制用户输入一个值,这不是我需要的。
if (myCustomJavaScript.notFalsy($input.val()) && $input[0].checkValidity()) {
// Submit AJAX request.
}