如何使用jquery删除空格并限制特殊字符?

时间:2009-05-11 05:23:52

标签: javascript jquery regex validation

我正在我的网站上创建一个注册表单。我想用用户名实现一些检查,这是

  • 用户名不能有任何空格,
  • 用户名不能包含除dot(。)以外的任何特殊字符,因为gmail正在以其注册形式进行。

我在我的应用程序中使用jQUERY,有人能告诉我如何使用jquery实现上面列出的两个检查?我记得这两个用户名的主要检查请告知你是否知道其他人?

由于

5 个答案:

答案 0 :(得分:4)

查看validation plug-in

无论你做什么,也要在服务器端验证用户名。

答案 1 :(得分:2)

您可以使用javascript regex检查:

if ($('#username').val().match(/^(\w)+[\w\d\.]*/)) {
  // everyting is ok
}else {
  // something is wrong
}

答案 2 :(得分:1)

首先在SO中的另一个条目jquery-validate-how-to-add-a-rule-for-regular-expression-validation中看到这里。

如果您需要其他想法,请尝试here以获取使用PHP的示例和使用jQuery的AJAX调用。

您还可以查看this页面以获取另一个jQuery解决方案。

答案 3 :(得分:0)

我通过研究@Dror提供的链接(this one)来检查用户名中的错误字符,尝试了以下jquery脚本,

if (!$('#uname').val().match("^[a-z0-9'.\s]{1,50}$")) {
    //not a correct username
}

由于

答案 4 :(得分:0)

当我检查答案时,我看到允许的空间。所以我改进了那些会读这个问题的人的正则表达式:

你需要这样做:

if (!$('#uname').val().match(/^[a-z0-9_-]{3,15}$/)) {
    alert("Please, use standard characters.");
}

正则表达式的描述:

  

^ - 开始行

     

[a-z0-9_-] - 匹配列表中的字符和符号,a-z,0-9,   下划线,连字符

     

{3,15} - 长度至少3个字符,最大长度15个

     

$ - 行尾