也许我是愚蠢但我不能为我的生活弄清楚如何获得自定义表单验证,以便在验证失败时停止onSubmit被调用.在创建新的Control时,我尝试使用
HTML语法(通过将自定义验证关键字直接添加到表单组件的htmlTemplate中)以及代码.我还没有看到任何暗示此功能不适用于自定义验证器的内容.
这是我正在使用的代码示例
import { Component,Output,EventEmitter,OnInit } from 'angular2/core'; import { FORM_DIRECTIVES,FormBuilder,Control,ControlGroup} from 'angular2/common'; @Component({ selector: 'formality-form',templateUrl: 'html/formality.html',styleUrls: ['styles.css'] }) export class FormalForm implements OnInit { formGroup: ControlGroup; // Here I register the custom validator to the Control group constructor(fb: FormBuilder) { this.formGroup = fb.group({ 'date': [''] } {validator: FormalForm.customVal}); } // This is my custom validator public static customVal(control: ControlGroup){ return {isFail:true}; } // I would like for this to never be called,since the custom validator is in // a state of perpetual fail. onSubmit(): void { console.log(this.formGroup.value); alert('onSubmit called; formGroup.valid = ' + this.formGroup.valid); } }
And here’s a link to the plunkr
我希望有人可以告诉我如何使其正常工作,或者指向一些文件,承认这不会像我期望的那样工作.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。