angular2对于表单的自定义验证

.ts文件中:

ngOnInit() {

let self = this;

self.validateForm = this.fb.group({ //表单初始化

num:['',[Validators.required]],

letter:['',[Validators.required]],

line:['',[Validators.required]],

specialcharactop:['',[Validators.required]],

converslocktime: ['', [Validators.required,Validators.pattern(/^(?:0|[1-9]\d*)(?:\.\d*[1-9])?$/)]],

minlength: ['', [Validators.required,Validators.pattern(/^[1-9]\d*$/)]],

count: ['', [Validators.required,Validators.pattern(/^[1-9]\d*$/)]],

locktime: ['', [Validators.required,Validators.pattern(/^(?:0|[1-9]\d*)(?:\.\d*[1-9])?$/)]],

singlelog: ['', [Validators.required,Validators.pattern(/^(?:(?:1[0-9][0-9]\.)|(?:2[0-4][0-9]\.)|(?:25[0-5]\.)|(?:[1-9][0-9]\.)|(?:[0-9]\.)){3}(?:(?:1[0-9][0-9])|(?:2[0-4][0-9])|(?:25[0-5])|(?:[1-9][0-9])|(?:[0-9]))$/)]],

}, );

}

html中:

<nz-form-item>

<nz-form-label [nzSpan]="8">单一登陆</nz-form-label>

<nz-form-control [nzSpan]="8" >

<input nz-input formControlName="singlelog" type="text" id="singlelog" placeholder="请输入单一登陆IP地址">

<nz-form-explain *ngIf="validateForm.get('singlelog').dirty && validateForm.get('singlelog').errors">请输入正确的IP地址!</nz-form-explain>

</nz-form-control>

</nz-form-item >

 

对于复选框的校验:

<nz-form-control [nzSpan]="8">

<label nz-checkbox [(ngModel)]="num" formControlName="num">数字</label>

<label nz-checkbox [(ngModel)]="letter" formControlName="letter">字母</label>

<label nz-checkbox [(ngModel)]="line" formControlName="line">下划线</label>

<label nz-checkbox [(ngModel)]="specialcharactop" formControlName="specialcharactop">特殊字符</label>

<nz-form-explain *ngIf="validateForm.get('num').dirty && (validateForm.controls['num']?.value)!=true && (validateForm.controls['letter']?.value)!=true && (validateForm.controls['line']?.value)!=true && (validateForm.controls['specialcharactop']?.value)!=true">请至少选择一项!</nz-form-explain>

<input nz-input formControlName="minlength" type="number" id="minlength" placeholder="请输入密码最小长度">

<nz-form-explain *ngIf="validateForm.get('minlength').dirty && validateForm.get('minlength').errors">请输入数字!</nz-form-explain>

</nz-form-control>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值