javascript - Angular 2 : Custom validation for fields with numbers only

标签 javascript twitter-bootstrap validation angular angular2-forms

我试图在 Angular 2 中进行自定义验证,我已经包含了我所需要的知识,但我无法验证

import { FORM_DIRECTIVES, AbstractControl, ControlGroup
,FormBuilder,Control, Validators } from 'angular2/common';
@Component({
selector : 'cusValidate',
template: `
 <form [ngFormModel] = "myform" (ngSubmit) = "onSubmit()">
 <lable>Credit Card Number</lable>
 <div>
 <input type = "text" [ngFormControl] = "inputfield"/>
 <div [class.has-error] = '!inval'>
  </div>
 </div>
 <button type = "submit">Submit</button>
 </form>
`,
directives : [FORM_DIRECTIVES]

})
export class cusValidation{
myform : ControlGroup;
inputfield : AbstractControl;

constructor(fb : FormBuilder){
   this.myform = fb.group({
        'inputfield' : ['' , Validators.compose([Validators.required
,this.formValidator])]
    })
   this.inputfield = this.myform.controls['inputfield']
}

 formValidator(val : Control) :any {
     if(val.value.match(/^123/)){
         return {inval : true};
     }
 }

onSubmit(){
    console.log('submit function called')
}
}
bootstrap(cusValidation);

验证器函数也在我包含的其他文件中,但这里它在类中并且我使用 this.function 访问,还有如何应用适当的 twitter Bootstrap

最佳答案

你正在使用 Angular2, 然后你可以使用 html5 表单字段。你为什么不使用'<input type ="number"/>

关于javascript - Angular 2 : Custom validation for fields with numbers only,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35636559/

相关文章:

javascript - 导出图像时出现 eslint 错误 - 首选默认导出

javascript - 提交表单而不重定向到其他页面

javascript - 使 Flickity 图像适合

twitter-bootstrap - 在 bootstrap3 中,当位于折叠的导航栏内时,弹出窗口被截断

java - ph-schematron 验证错误消息

python - 使用 Cerberus 进行 SQLAlchemy 整个模型验证

javascript - 如何从字符串中获取特定值?

html - 只加载一些 Bootstrap 元素

python - 如何将表单控件添加到 Django 表单?

ReactJS 中验证密码的正则表达式