1
我有部分模型驱动部分模板驱动窗体,我想验证其中一个使用自定义逻辑的输入。问题是,即使验证返回有效,控制处于无效状态。我究竟做错了什么?使用验证服务进行验证
<span *ngIf="identityNumber.touched && !identityNumber.valid">invalid</span>
..
this.form = this.formBuilder.group({
identityNumber: ['', Validators.required,
ValidationService.validateIdentityNumber]
});
..
public static validateIdentityNumber(control: Control) {
let val: string = <string>control.value;
if (val && val.length == 11) {
return null;
} else {
return { "invalidIdentityNumber": true };
}
}
http://plnkr.co/edit/1IY4iXEeQDXUanCOSCKX?p=preview
它显示为 “无效”,甚至当你键入11个字符。
(我知道有一个长的验证,这是样品的缘故)