我正在尝试使用onblur函数来验证使用正则表达式表达式进行测试的邮政编码字段,但是当它应该返回true时,它将返回false。 JS小提琴:https://jsfiddle.net/gzr5csu4/2/
function validatePostcode(){
alert("onblur triggered!");
var postcodeRegEx = /^5[0-9]{3}$/;
var postcodeResult = postcodeRegEx.test(postcode);
if (postcodeResult == false){
alert("Postcode is not valid!");
}
return true;
}
我看不出为什么它不起作用,我对Java脚本还很陌生,所以可能缺少了一些非常简单的东西。 在将“ 5251”设置为邮政编码时会触发onblur函数,但在不应该的情况下会返回false。 任何帮助将不胜感激。
答案 0 :(得分:1)
您缺少声明和设置postcode
。
添加此var postcode = document.getElementById("postcode").value;
函数应如下所示:
function validatePostcode(){
alert("onblur triggered!");
var postcode = document.getElementById("postcode").value;
var postcodeRegEx = /^5[0-9]{3}$/;
var postcodeResult = postcodeRegEx.test(postcode);
if (postcodeResult == false){
alert("Postcode is not valid!");
}
return true;
}