HTML5 验证:字段不是必需的,但如果填写,必须匹配模式?

Utk*_*nos 5 html javascript regex api validation

在玩 HTML5 验证时,我突然想到,除非需要,否则(似乎)不可能验证字段的输入。

换句话说,它不是可以说“不需要此领域,但如果你填补它,它必须格局X.匹配” 例如:

<textarea pattern='.{5,10}'></textarea>
Run Code Online (Sandbox Code Playgroud)

将 1-4 个字符(包括)输入到 textarea 中,运行element.willValidateelement.checkValidity()返回 true。

我知道 HTML5 验证还不完美。HTML5 无法实现“仅在填充时才进行验证”的概念吗?

pro*_*Raj 3

您可以在正则表达式中添加另一个选项以获取完全空的文本

<textarea pattern='(.{5,10}|^$)'></textarea>
Run Code Online (Sandbox Code Playgroud)