我正在尝试使用 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-script 相当陌生,所以可能缺少一些非常简单的东西。但是,当在邮政编码中输入“5251”时,会触发 onblur 函数,它不应该返回 false。任何帮助将不胜感激。
1 回答
蝴蝶刀刀
TA贡献1801条经验 获得超8个赞
您缺少声明和设置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;
}
添加回答
举报
0/150
提交
取消