正则表达式为真时返回假

我正在尝试使用 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。任何帮助将不胜感激。


神不在的星期二
浏览 202回答 1
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;}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript