我已经设法验证了我的字段,因此它始终是四位数,但是我需要进行验证,以便它始终是一个数字。我尝试添加此代码块,但无法正常工作。

if (!(document.ExamEntry.cand.value.match(numbers))) {
    msg += "Only use numeric characters \n";
    document.ExamEntry.cand.focus();
    document.getElementById('cand').style.color = "red";
    result = false;
}

这将允许四位数的组合,例如9a9a或!2#3等。
我像这样添加了“数字”变量;
var numbers = /[0-9]/;

什么是进行此验证的更好方法?

最佳答案

假设您在这里获得了值(value)

var val = document.ExamEntry.cand.value;

然后,如果您希望它是里面有4位数字的东西,请执行此操作
var itIsNumber = /^\d{4}$/.test(val); // true if it is what you want

如果您希望它是1到4位数字的东西,只需执行此操作
var itIsNumber = /^\d{1,4}$/.test(val); // true if it is what you want

更多示例和详细信息在这里-> Regular Expressions

关于javascript - 如何验证文本字段,使其只能包含四位数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17380766/

10-13 01:36