我希望那些试图在我的网站上订阅的人输入一个昵称,并且该昵称应仅由字母和数字组成(根本没有特殊字符)。

我想要以下内容:仅abcdefghijklmnopqrstuvwxyz1234567890

我如何检查是否只有这些?

最佳答案

HTML5解决方案将是...

<input type="text" id="input-nickname" name="nickname" pattern="[a-z\d]*"  />


jsFiddle

但是,为了获得最佳的浏览器支持,您可以使用JavaScript ...

document.getElementById('input-nickname').onkeyup = function(event) {

    this.value = this.value.replace(/[^a-z\d]/, '');

}


jsFiddle

要使JavaScript版本类似于HTML5方法,请查看表单的submit事件。

请记住,这对字母和数字有非常严格的定义。为了获得适当的Unicode支持,请找到您关心的范围,然后使用\u0000-\uFFFF进行指定。

08-06 22:13