如果用户在字段中使用了小写字母,那么验证就像
一样aBCD1234
不工作表单不会提交
ABCD1234
现在用户将提交表单。
答案 0 :(得分:4)
不要使用JavaScript(尤其不是jQuery):
<input type="text" pattern="[A-Z0-9]{8}" />
根据需要调整模式,但这将起作用(即,即使禁用JavaScript,也会停止无效输入的表单提交)。另外,编程要简单得多,所以就是这样。
答案 1 :(得分:1)
这里有一个简单的功能来检查字符串&#39;字母字符只有大写:
var isValid = function(str) {
if(str === str.toUpperCase()) {
return true;
} else {
return false;
}
};
这是检查长度的测试:
var isValid = function(str) {
if(str.length === 8) {
return true;
} else {
return false;
}
};
测试是否存在八个大写字母和/或数字的字符串:
var isValid = function(str) {
var re = /[A-Z0-9]{8}/;
if(re.test(str)) {
return true;
} else {
return false;
}
};
测试只有大小和大小的长度和存在的测试。 NUMS:强>
var isValid = function(str) {
var re = /[A-Z0-9]{8}/;
if(str.length === 8 && re.test(str)) {
return true;
} else {
return false;
}
};
用法:
isValid('ABCD1234'); // true
isValid('aBCD1234'); // false
isValid('aBCD123'); // false
isValid('AABCD1234'); // false
用于构建/验证正则表达式的快速工具:http://rubular.com/
答案 2 :(得分:1)
怎么样:
<input type="text" onkeyup="this.value = this.value.toUpperCase();" />
答案 3 :(得分:0)
在return isValid();
按钮的onclick
事件中添加submit
:
<input type="button" onclick="return isValid();" />
@ {janaspage的答案
中描述了isValid
函数