【发布时间】:2018-01-11 03:54:50
【问题描述】:
我编写了以下内容以插入到我的 Parsley extras 文件中,以允许通过 parsley.js 验证英国邮政编码
//postcode
window.Parsley.addValidator('postcode', {
requirementType: 'string',
validateString: function(value, requirement) {
var postcode = value.match(/^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([AZa-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z]))))[0-9][A-Za-z]{2})$/) || [];
return postcode.length >= requirement;
},
messages: {
en: 'The postcode entered is invalid.'
}
});
它似乎不接受邮政编码中间的空格,这让我感到奇怪,因为我觉得用户总是试图添加它。
澄清一下,我设置的规则中的正则表达式直接来自UK government advice on the issue。
我有一个无效的函数还是这个正则表达式按预期工作?如果其他人有使用英国邮政编码的欧芹,我会很感激任何信息,因为令人惊讶的是,欧芹 github 页面或互联网上的其他地方似乎根本没有涵盖这些信息。
【问题讨论】:
标签: validation parsley.js postal-code