【发布时间】:2020-09-28 18:39:32
【问题描述】:
假设我有一个文本框,我希望它只接受字母数字字符(不区分大小写)。我已经通过使用 javascript 和 regex.test() 做到了,但我想要最简单的实现。 仅使用 HTML 可以做到这一点吗? 例如,我知道我们可以通过执行 <input type="number"> 来限制文本框接受数字。但我希望文本框接受文本和数字类型并限制特殊字符。谢谢。
【问题讨论】:
假设我有一个文本框,我希望它只接受字母数字字符(不区分大小写)。我已经通过使用 javascript 和 regex.test() 做到了,但我想要最简单的实现。 仅使用 HTML 可以做到这一点吗? 例如,我知道我们可以通过执行 <input type="number"> 来限制文本框接受数字。但我希望文本框接受文本和数字类型并限制特殊字符。谢谢。
【问题讨论】:
看看input patterns的这个功能。
你可以这样做:
<input type="text" id="onlyletters" name="onlyletters" pattern="[a-zA-Z0-9]+" title="Only letters">
在pattern属性中,你可以使用任何正则表达式。
【讨论】:
0-9:... pattern="[a-zA-Z0-9]+"
如果您使用的是textarea 元素,那么答案是否定的。
但是,如果您使用的是 input 元素,那么答案是肯定的 - 请参阅 specifying a pattern,它可以接受 Javascript 正则表达式,但只能使用 HTML。
【讨论】: