Javascript中的基本输入字段验证

时间:2016-06-24 09:08:56

标签: javascript

我是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');
    }
}

由于 巴尔卡尔

2 个答案:

答案 0 :(得分:0)

您可以使用以下正则表达式来检查字符,而不是字母数字,即字符和数字。

/^[a-zA-Z]+$/.test('Abc') // true

/^[a-zA-Z]+$/.test('a1') // false

在你的正则表达式中,你已经指定了0-9之间的数字,这就是为什么它在字母数字上返回true。

您也可以使用\ D,即非数字

/^[\D]+$/.test('A')

$之前的+号是一个或多个字符。

答案 1 :(得分:-1)

var alphanumeric = / [^ a-zA-Z] /;完成...谢谢