Javascript + Regex = 以某种方式中断函数调用

标签 javascript html regex

html代码:

<div class="submitForm">
  <input type="button" value="button" onclick="doValidateForm();" /></div>

JavaScript:

<script type="text/javascript">
  function doValidateForm() {
    if (!/^[0-9]+${5}/.test(zip) && zip != "") {
      alert("Zip has invalid characters.");
      return false;
    }
  }
</script>

问题出在 {5}。有了它,我收到“JavaScript 运行时错误:'doValidateForm' 未定义”。我已在表达式中移动了 {5}。如果它不存在,代码就可以正常执行。

我已经尝试过:

/^[0-9]{5}+$/.test(zip)

/^{5}[0-9]+$/.test(zip)

但它还是坏了。任何帮助将不胜感激。

编辑固定代码。

最佳答案

这个条件:

if (!/^[0-9]+${5}/.test(zip) && zip != "")

应重写为:

if (/^\d{5}$/.test(zip) == false) {

关于Javascript + Regex = 以某种方式中断函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18113226/

相关文章:

javascript - 本地存储未定义?

html - Chrome 显示图像的方式与其他浏览器不同

javascript - 如何使jsp页面键盘可访问以及如何更改弹出的jsp页面的位置?

用于使用 ASP MVC 2 数据注释验证电子邮件列表的 javascript 正则表达式

java - 如何仅当后面的字符是数字而前一个字符是字母时才用 "-"分割字符串? Java/Scala

javascript - 如何将多个对象放在同一 Canvas 上?

javascript - 如何在 JavaScript 中压缩/简化/缩小数值数组

javascript - 在 ASP.NET 中添加自定义属性。在 JQuery 中访问它

javascript - 如何通过复制/粘贴到文本区域来生成 HTML 标签

regex - 如何跳过 elisp 中的符号?