我对 JavaScript 很陌生,所以我开始学习 Forms。请查看代码并提出建议。
我只想验证第一个字段,它必须包含字符串,但不能包含数字,也不应包含字母数字字符。但是如果我输入字母数字字符,它不会显示警报消息窗口。好心提醒。
function checkFields()
{
var tname = document.getElementById("t0_name").value;
var texpense = document.getElementById("t1_expense").value;
var tdate = document.getElementById("t2_date").value;
var tamt = document.getElementById("t3_amt").value;
var tstatus = document.getElementById("t4_status").value;
var temail = document.getElementById("t5_email").value;
var alphanumeric = /[^a-zA-Z0-9]/;
if (tname == null || tname == "") {
document.getElementById("t0_name").style.border = "1px solid black";
alert('should not be blank');
} else if (!isNaN(tname)) {
alert('Should not be Numeric');
document.getElementById("t0_name").style.border = "1px solid red";
} else if (/[^a-zA-Z0-9]/.test(tname)) {
alert('Input is not alphanumeric');
}
}
谢谢巴尔卡尔
您可以使用以下正则表达式仅检查字符而不是字母数字,即字符和数字。
/^[a-zA-Z]+$/.test('Abc') // true
/^[a-zA-Z]+$/.test('a1') // false
在您的正则表达式中,您指定了 0-9 之间的数字,这就是它在字母数字上返回 true 的原因。
您还可以使用 \D 即非数字
/^[\D]+$/.test('A')
$ 前的 + 号表示一个或多个字符。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句