jquery中的邮政编码验证

use*_*095 1 validation jquery

$('#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";
    }
Run Code Online (Sandbox Code Playgroud)

我得到第一个和第二个,即邮政编码的空和长度验证.但对于第三种情况,数字验证不起作用.任何人帮助我获得数字验证提前感谢

Jim*_*zuk 13

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

$('#create_membership').click(function()
{
    var zip = $('#zip').val();

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

    if (!zipRegex.test(zip))
    {
        // trigger error
    }
    else
    {
        // success!
    }
});
Run Code Online (Sandbox Code Playgroud)

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

  • 上面的正则表达式有一个拼写错误(由于某种原因我不能编辑它).正确的格式应该包括一个`}`之后的`4` - `/ ^\d {5}( - \d {4})?$ /` (2认同)