HTML5验证输入以仅接受字母

kyo*_*kyo 4 html5 input

我有一个输入的名字

<input pattern="[a-zA-Z]" oninvalid="setCustomValidity('Please enter on alphabets only. ')" type="text" class="form-control" name="first_name" placeholder="Firstname">
Run Code Online (Sandbox Code Playgroud)

我输入为: qwerqwe

我不断

Please enter on alphabets only. 打印

在此处输入图片说明

不是qwerqwe应该有效吗?我现在有点困惑,不确定我在这里错过了什么。

有人可以给我一些提示吗?

Mar*_*ude 7

您只允许输入一个字符。您错过了+标志:

<input pattern="[a-zA-Z]+" oninvalid="setCustomValidity('Please enter on alphabets only. ')" type="text" class="form-control" name="first_name" placeholder="Firstname">
Run Code Online (Sandbox Code Playgroud)

正如@le_m在评论中所说,您可以编写*通配符以允许空输入:

<input pattern="[a-zA-Z]*" oninvalid="setCustomValidity('Please enter on alphabets only. ')" type="text" class="form-control" name="first_name" placeholder="Firstname">
Run Code Online (Sandbox Code Playgroud)

  • 万一其他人遇到这个问题。我必须使用 ^[a-zA-Z]+ 才能使其正常工作 (2认同)