【问题标题】:jQuery validation plugin: accept only US, Canada and Mexic zip code?jQuery 验证插件:只接受美国、加拿大和墨西哥的邮政编码?
【发布时间】:2013-04-03 18:16:10
【问题描述】:

我想使用 jQuery 验证插件来验证仅接受美国、加拿大或墨西哥邮政编码格式的邮政编码字段,但似乎没有为它定义的规则。我在 Google 上搜索过,但没有发现任何有用的信息。

我只需要接受这些邮政编码格式:

美国:99999-9999 或 99999 加拿大:A9A 9A9 MX: 99999

感谢您的帮助。

【问题讨论】:

标签: jquery jquery-validate validation zipcode


【解决方案1】:

查看additional-methods.js 文件中的各种邮政编码规则。您可以根据需要复制和调整它们。

jQuery.validator.addMethod("ziprange", function(value, element) {
    return this.optional(element) || /^90[2-5]\d\{2\}-\d{4}$/.test(value);
}, "Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx");

jQuery.validator.addMethod("zipcodeUS", function(value, element) {
    return this.optional(element) || /\d{5}-\d{4}$|^\d{5}$/.test(value);
}, "The specified US ZIP Code is invalid");

【讨论】:

  • 好的开始。我没有在其他方法中看到它,尤其是对于 zipcodeUS。谢谢。
  • @AdrianPlopeanu,不客气。请不要忘记点击绿色复选标记“接受”我的回答。谢谢。
  • 好的,我想出的最后一个用于验证美国、加拿大和墨西哥邮政编码的正则表达式是:/\d{5}-\d{4}$|^\d{5}$| ^[a-zA-Z][0-9][a-zA-Z](| )?[0-9][a-zA-Z][0-9]$/
  • @doub1ejack 对我来说并不重要,但感谢您指出 LDU 9Z0。它也匹配 H0H0H0,它不是一个有效的邮政编码,但目的是向用户表明我们正在验证邮政编码,而不是详尽无遗或疯狂。
猜你喜欢
  • 2011-05-05
  • 2019-02-25
  • 2013-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多