Javascript Zipcode验证,显示特定状态的错误

Javascript Zipcode验证,显示特定状态的错误,javascript,jquery,validation,zipcode,required,Javascript,Jquery,Validation,Zipcode,Required,我试图创建一个表单,当人们插入一个特定的邮政编码或一系列邮政编码时,它会弹出一个错误 例如: 如果潜在客户填写表格并输入华盛顿州的邮政编码,我希望弹出一个错误,表明我们在该州不提供该产品 我搜索过Google和Stackoverflow,但仍然没有找到一个代码的工作示例。。。我见过类似的例子,但与我的例子不完全相同 我正在寻找的示例可以是javascript或jquery,加载您在数组中提供服务的zipcodes数组。如果您使用的是jQuery: var zip= $('#zipcode').v

我试图创建一个表单,当人们插入一个特定的邮政编码或一系列邮政编码时,它会弹出一个错误

例如:

如果潜在客户填写表格并输入华盛顿州的邮政编码,我希望弹出一个错误,表明我们在该州不提供该产品

我搜索过Google和Stackoverflow,但仍然没有找到一个代码的工作示例。。。我见过类似的例子,但与我的例子不完全相同


我正在寻找的示例可以是javascript或jquery,加载您在数组中提供服务的zipcodes数组。如果您使用的是jQuery:

var zip= $('#zipcode').val();

if( $.inArray( zip, zipCadeArray)===-1){
  alert("We don't service that zip")
}

将警报修改为您想要的行为

加载您在阵列中提供服务的zipcodes数组。如果您使用的是jQuery:

var zip= $('#zipcode').val();

if( $.inArray( zip, zipCadeArray)===-1){
  alert("We don't service that zip")
}

考虑ID为zipCode的输入元素,修改所需行为的警报

<input id="zipCode" name="zipCode" />
考虑到一个像

var acceptableZipCodes = ["53782", "11709", "97035", "86531"]; 
我们可以测试zipCode的值是否在数组中,如果不在数组中,我们将返回警报

if($.inArray(zipCode, acceptableZipCodes)){
  //do nothing, or do whatever you want
  //we have a return true here.
}else{
  alert("Sorry. we don't offer products in that state.");
}
现在,我们可能应该将代码放在事件中。让我们使用keyup函数,但是因为我们不想检查每个值,所以我们只检查第5个keyup

var acceptableZipCodes = ["53782", "11709", "97035", "86531"]; 
$("#zipCode").live('keyup', function(){
   var zipCode = $(this).val();
   if(zipCode.length >4){
     if($.inArray(zipCode, acceptableZipCodes)){
       //do nothing, or do whatever you want
       //we have a return true here.
     }else{
       alert("Sorry. we don't offer products in that state.");
     } 
   }
});    

考虑ID为zipCode的输入元素

<input id="zipCode" name="zipCode" />
考虑到一个像

var acceptableZipCodes = ["53782", "11709", "97035", "86531"]; 
我们可以测试zipCode的值是否在数组中,如果不在数组中,我们将返回警报

if($.inArray(zipCode, acceptableZipCodes)){
  //do nothing, or do whatever you want
  //we have a return true here.
}else{
  alert("Sorry. we don't offer products in that state.");
}
现在,我们可能应该将代码放在事件中。让我们使用keyup函数,但是因为我们不想检查每个值,所以我们只检查第5个keyup

var acceptableZipCodes = ["53782", "11709", "97035", "86531"]; 
$("#zipCode").live('keyup', function(){
   var zipCode = $(this).val();
   if(zipCode.length >4){
     if($.inArray(zipCode, acceptableZipCodes)){
       //do nothing, or do whatever you want
       //we have a return true here.
     }else{
       alert("Sorry. we don't offer products in that state.");
     } 
   }
});    

您最好测试一下您支持的邮政编码

function zipToState(zip){
    var state, i= 0, next, statezips= [
        [1000, 2792, 'MA'], [2800, 2941, 'RI'], [3030, 3898, 'NH'], [3900, 4993, 'ME'], 
        [5000, 5496, 'VT'],[5500, 5545, 'MA'], [5600, 5908, 'VT'], [6000, 6390, 'CT'], 
        [6389, 6391, 'NY'], [6400, 6929, 'CT'],[7000, 8990, 'NJ'], 
        [10000, 14976, 'NY'], [15000, 19641, 'PA'], [19700, 19981, 'DE'],
        [20000, 20040, 'DC'], [20039, 20042, 'VA'], [20039, 20168, 'VA'], [20041, 20600, 'DC'],
        [20041, 20043, 'VA'], [20330, 20332, 'MD'], [20334, 20798, 'MD'], [20798, 20800, 'DC'],
        [20811, 21931, 'MD'], [22000, 24659, 'VA'], [24700, 26887, 'WV'], [27005, 28910, 'NC'],
        [29000, 29949, 'SC'], [30000, 32000, 'GA'], [32003, 34998, 'FL'], [35003, 36926, 'AL'],
        [37009, 38590, 'TN'], [38600, 39777, 'MS'], [39900, 39902, 'GA'], [40002, 42789, 'KY'],
        [43000, 46000, 'OH'], [46000, 47998, 'IN'], [48000, 49972, 'MI'], [50000, 52810, 'IA'],
        [53000, 54991, 'WI'], [55000, 56764, 'MN'], [57000, 57800, 'SD'], [58000, 58857, 'ND'],
        [59000, 59938, 'MT'], [60000, 63000, 'IL'], [63000, 65900, 'MO'], [66001, 67955, 'KS'],
        [68000, 68119, 'NE'], [68118, 68121, 'IA'], [68121, 69368, 'NE'], [70000, 71233, 'LA'],
        [71232, 71234, 'MS'], [71233, 71498, 'LA'], [71600, 72960, 'AR'], [73000, 73200, 'OK'],
        [73300, 73302, 'TX'], [73400, 74967, 'OK'], [75000, 75502, 'TX'], [75501, 75503, 'AR'],
        [75502, 80000, 'TX'], [80000, 81659, 'CO'], [82000, 83129, 'WY'], [83200, 83877, 'ID'],
        [84000, 84785, 'UT'], [85000, 86557, 'AZ'], [87000, 88442, 'NM'], [88509, 88590, 'TX'],
        [88900, 89884, 'NV'], [90000, 96163, 'CA'], [96700, 96899, 'HI'], [97000, 97921, 'OR'],
        [98000, 99404, 'WA'], [99500, 99951, 'AK']
    ];
    if(/^\d{5}$/.test(zip)){
        zip= Number(zip.substring(0,5));
        while(i<72){
            next= statezips[i++];
            if(zip> next[0] && zip< next[1]) return next[2];
        }
    }
    return '';
}

zipToState('04355')

/*  returned value: (String)
ME
*/
函数zipToState(zip){
变量状态,i=0,下一步,状态zips=[
[10002792,'MA'],[28002941,'RI'],[30303898,'NH'],[39004993,'ME',
[50005496,[VT'],[55005545,[MA'],[56005908,[VT'],[60006390,[CT'],
[63896391',纽约州],[64006929',加利福尼亚州],[70008990',新泽西州],
[10000,14976,'NY'],[15000,19641,'PA'],[1970019981,'DE',
[20000,20040,'DC'],[2003920042,'VA'],[2003920168,'VA'],[2004120600,'DC'],
[2004120043,'VA']、[2033020332,'MD']、[2033420798,'MD']、[2079800,'DC'],
[2081121931,[MD'],[2200024659,[VA'],[2470026887,[WV'],[2700528910,[NC',
[290002999,[SC']、[3000032000,[GA']、[3200334998,[FL']、[3500336926,[AL'],
[3700938590,'TN'],[3860039777,'MS'],[3990039902,'GA'],[4000242789,'KY'],
[4300046000,'OH'],[4600047998,'IN'],[4800049972,'MI'],[50000,52810,'IA'],
[5300054991,[WI'],[5500056764,[MN'],[5700057800,[SD'],[5800058857,[ND'],
[5900059938,[MT'],[6000063000,[IL'],[630065900,[MO'],[6600167955,[KS',
[6800068119,‘东北’,[6811868121,‘IA’,[6812169368,‘东北’,[7000071233,‘洛杉矶’,
[71232、71234、[71233、71498、[LA']、[71600、72960、[AR']、[73000、73200、[OK'],
[7330073302,‘TX’],[7340074967,‘OK’,[7500075502,‘TX’,[7550175503,‘AR’,
[755028000,'TX'],[8000081659,'CO'],[8200083129,'WY'],[8320083877,'ID'],
[8400084785,'UT'],[8500086557,'AZ'],[8700088442,'NM'],[885098590,'TX'],
[8890089884,'NV']、[9000096163,'CA']、[9670096899,'HI'、[9700097921'或',
[9800099404,[WA'],[9950099951,[AK']
];
if(/^\d{5}$/.test(zip)){
zip=数字(zip.子字符串(0,5));
而(i next[0]&&zip
您最好测试您确实支持的邮政编码

function zipToState(zip){
    var state, i= 0, next, statezips= [
        [1000, 2792, 'MA'], [2800, 2941, 'RI'], [3030, 3898, 'NH'], [3900, 4993, 'ME'], 
        [5000, 5496, 'VT'],[5500, 5545, 'MA'], [5600, 5908, 'VT'], [6000, 6390, 'CT'], 
        [6389, 6391, 'NY'], [6400, 6929, 'CT'],[7000, 8990, 'NJ'], 
        [10000, 14976, 'NY'], [15000, 19641, 'PA'], [19700, 19981, 'DE'],
        [20000, 20040, 'DC'], [20039, 20042, 'VA'], [20039, 20168, 'VA'], [20041, 20600, 'DC'],
        [20041, 20043, 'VA'], [20330, 20332, 'MD'], [20334, 20798, 'MD'], [20798, 20800, 'DC'],
        [20811, 21931, 'MD'], [22000, 24659, 'VA'], [24700, 26887, 'WV'], [27005, 28910, 'NC'],
        [29000, 29949, 'SC'], [30000, 32000, 'GA'], [32003, 34998, 'FL'], [35003, 36926, 'AL'],
        [37009, 38590, 'TN'], [38600, 39777, 'MS'], [39900, 39902, 'GA'], [40002, 42789, 'KY'],
        [43000, 46000, 'OH'], [46000, 47998, 'IN'], [48000, 49972, 'MI'], [50000, 52810, 'IA'],
        [53000, 54991, 'WI'], [55000, 56764, 'MN'], [57000, 57800, 'SD'], [58000, 58857, 'ND'],
        [59000, 59938, 'MT'], [60000, 63000, 'IL'], [63000, 65900, 'MO'], [66001, 67955, 'KS'],
        [68000, 68119, 'NE'], [68118, 68121, 'IA'], [68121, 69368, 'NE'], [70000, 71233, 'LA'],
        [71232, 71234, 'MS'], [71233, 71498, 'LA'], [71600, 72960, 'AR'], [73000, 73200, 'OK'],
        [73300, 73302, 'TX'], [73400, 74967, 'OK'], [75000, 75502, 'TX'], [75501, 75503, 'AR'],
        [75502, 80000, 'TX'], [80000, 81659, 'CO'], [82000, 83129, 'WY'], [83200, 83877, 'ID'],
        [84000, 84785, 'UT'], [85000, 86557, 'AZ'], [87000, 88442, 'NM'], [88509, 88590, 'TX'],
        [88900, 89884, 'NV'], [90000, 96163, 'CA'], [96700, 96899, 'HI'], [97000, 97921, 'OR'],
        [98000, 99404, 'WA'], [99500, 99951, 'AK']
    ];
    if(/^\d{5}$/.test(zip)){
        zip= Number(zip.substring(0,5));
        while(i<72){
            next= statezips[i++];
            if(zip> next[0] && zip< next[1]) return next[2];
        }
    }
    return '';
}

zipToState('04355')

/*  returned value: (String)
ME
*/
函数zipToState(zip){
变量状态,i=0,下一步,状态zips=[
[10002792,'MA'],[28002941,'RI'],[30303898,'NH'],[39004993,'ME',
[50005496,[VT'],[55005545,[MA'],[56005908,[VT'],[60006390,[CT'],
[63896391',纽约州],[64006929',加利福尼亚州],[70008990',新泽西州],
[10000,14976,'NY'],[15000,19641,'PA'],[1970019981,'DE',
[20000,20040,'DC'],[2003920042,'VA'],[2003920168,'VA'],[2004120600,'DC'],
[2004120043,'VA']、[2033020332,'MD']、[2033420798,'MD']、[2079800,'DC'],
[2081121931,[MD'],[2200024659,[VA'],[2470026887,[WV'],[2700528910,[NC',
[290002999,[SC']、[3000032000,[GA']、[3200334998,[FL']、[3500336926,[AL'],
[3700938590,'TN'],[3860039777,'MS'],[3990039902,'GA'],[4000242789,'KY'],
[4300046000,'OH'],[4600047998,'IN'],[4800049972,'MI'],[50000,52810,'IA'],
[5300054991,[WI'],[5500056764,[MN'],[5700057800,[SD'],[5800058857,[ND'],
[5900059938,[MT'],[6000063000,[IL'],[630065900,[MO'],[6600167955,[KS',
[6800068119,‘东北’,[6811868121,‘IA’,[6812169368,‘东北’,[7000071233,‘洛杉矶’,
[71232、71234、[71233、71498、[LA']、[71600、72960、[AR']、[73000、73200、[OK'],
[7330073302,‘TX’],[7340074967,‘OK’,[7500075502,‘TX’,[7550175503,‘AR’,
[755028000,'TX'],[8000081659,'CO'],[8200083129,'WY'],[8320083877,'ID'],
[8400084785,'UT'],[8500086557,'AZ'],[8700088442,'NM'],[885098590,'TX'],
[8890089884,'NV']、[9000096163,'CA']、[9670096899,'HI'、[9700097921'或',
[9800099404,[WA'],[9950099951,[AK']
];
if(/^\d{5}$/.test(zip)){
zip=数字(zip.子字符串(0,5));
而(i next[0]&&zip
您的邮政编码数据来自哪里?你是如何搜索它的?到目前为止你尝试了什么?请发布一些代码或您在这方面的尝试。@我希望javascript有一个