我有一个字段,也需要自定义验证
以下指令
app.directive('postcode', function() {
return {
require: 'ngModel',
link: function(scope, elm, attrs, ctrl) {
ctrl.$parsers.unshift(function (val) {
var regex = /^(([gG][iI][rR] {0,}0[aA]{2})|((([a-pr-uwyzA-PR-UWYZ][a-hk-yA-HK-Y]?[0-9][0-9]?)|(([a-pr-uwyzA-PR-UWYZ][0-9][a-hjkstuwA-HJKSTUW])|([a-pr-uwyzA-PR-UWYZ][a-hk-yA-HK-Y][0-9][abehmnprv-yABEHMNPRV-Y]))) {0,}[0-9][abd-hjlnp-uw-zABD-HJLNP-UW-Z]{2}))$/,
valid = regex.test(val);
if(valid) {
ctrl.$setValidity('postcode', true);
return val;
}
else {
ctrl.$setValidity('postcode', false);
return undefined;
}
});
}
};
});
虽然所需的位无缝工作(耶!) 作品之一,也是邮政编码显示所需的错误信息以及无效
(由于某种原因,复制/粘贴DOM元素会导致一个错误,但犯规说什么)