我想强制执行那个
- 输入的名字只能包含字符 A-Z、a-z 和 -
- 输入的登录名只能包含字母数字字符
如何限制javascript中的两条规则?
下面是我的用户名正则表达式代码 (jsp)。但它无法正常工作。
function validateForm(){
var nameRegex = /^[a-zA-Z\-]+$/;
var validfirstUsername = document.frm.firstName.value.match(nameRegex);
if(validUsername == null){
alert("Your first name is not valid. Only characters A-Z, a-z and '-' are acceptable.");
document.frm.firstName.focus();
return false;
}
}
谢谢!
最佳答案
除了不一致的变量引用之外,您的代码看起来还不错(请参阅 Josh Purvis 的评论)。
以下正则表达式适合您的名字规范:
var nameRegex = /^[a-zA-Z\-]+$/;
为您的用户名检查添加数字非常简单:
var usernameRegex = /^[a-zA-Z0-9]+$/;
注意:正则表达式的写法有很多种。我选择提供一个与您开始时相匹配的版本。我鼓励你完成这个 Regular Expression Tutorial
关于javascript 正则表达式(用户名验证),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9628879/