首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery中的邮政编码验证

jquery中的邮政编码验证
EN

Stack Overflow用户
提问于 2012-07-13 22:38:16
回答 4查看 27.7K关注 0票数 1
代码语言:javascript
复制
$('#create_membership').click(function () {
    var zip = $('#zip').val();

    else if (zip == ''){
        errorMessage = "*Zipcode required!";
    }
    else if ((zip.length)< 5 || (zip.length)>5 ){
        errorMessage = "*zipcode should only be 5 digits";
    }
    else if ( zip =( "^[0-9]+$" )){
        errorMessage = "*zipcode should be numbers only";
    }

我得到了第一和第二,即空和长度验证邮编code.but为第三个案例,数字验证不是working.can任何人帮助我得到数字验证感谢提前

EN

回答 4

Stack Overflow用户

发布于 2012-07-13 22:46:22

这并不是特定于jQuery的,但是您有几个语法错误,您的验证逻辑可以大大简化:

代码语言:javascript
复制
$('#create_membership').click(function()
{
    var zip = $('#zip').val();

    var zipRegex = /^\d{5}$/;

    if (!zipRegex.test(zip))
    {
        // trigger error
    }
    else
    {
        // success!
    }
});

我应该注意的是,验证邮政编码并不一定仅仅是检查5个数字。我也会试着在某个地方找到一个列表,并确保他们输入的是有效的美国邮政编码。此外,您可能还希望允许使用4位数的补充代码。

票数 13
EN

Stack Overflow用户

发布于 2012-07-13 22:42:32

你需要像对待函数一样对待正则表达式,否则你只是将值赋值给"zip“。如下所示:

代码语言:javascript
复制
$('#create_membership').click(function () {
  var zip = $('#zip').val();
  var reg = /^[0-9]+$/;
  else if (zip == ''){
  errorMessage = "*Zipcode required!";
  }
  else if ((zip.length)< 5 || (zip.length)>5 ){
  errorMessage = "*zipcode should only be 5 digits";
  }
  else if (!reg.test(zip)){
  errorMessage = "*zipcode should be numbers only";
  }
});
票数 3
EN

Stack Overflow用户

发布于 2012-07-13 22:42:50

你可以试试这样的东西-- How to allow only numeric (0-9) in HTML inputbox using jQuery?

如果您只想要正则表达式,可以试试这个- jquery: validate that text field is numeric

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11472694

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档