【问题标题】:Dynamic form validation in ionic2ionic2中的动态表单验证
【发布时间】:2023-03-14 18:20:02
【问题描述】:

我正在 ionic2 中创建一个表单,其中字段根据用户动态更改的类别而变化。

如果字段类别为 A 则被选中

那么需要一些字段,例如 start_date 和 time

但对于 B 类,只需要 start_date

对于 C,两者都不是必需的。

我在 ionic2 中使用 FormBuilder 并进行如下验证:

this.logForm = formBuilder.group({
        'start_date': ['', Validators.compose([Validators.maxLength(30),
                              Validators.required])],
        'time': ['', Validators.compose([Validators.maxLength(30),
                              Validators.required])],
    });

我在这样的警报结果中获得了所选类别:

category(){
   var options = {
      title: 'Choose a task category',
      inputs: [],
      message: 'Which category do you like?',
      buttons: [
        {
          text: 'Cancel',
          role: 'cancel',
          handler: () => {
            console.log('Cancel clicked');
          }
        },
        {
          text: 'Ok',
          handler: data => {}
        }
      ]
   }
}

在 'Ok' 的处理程序中,我可以成功检索所选类别。

所以我的问题是如何根据用户在应用中选择的类别动态应用验证。

【问题讨论】:

    标签: angular ionic2


    【解决方案1】:

    您可以尝试在 formgroup api 中使用setControl 函数。

    例如在category的数据处理器中:

    ()=>{
    this.logForm.setControl('start_date',new FormControl('',Validators.required);
    }
    

    formControlhere的API

    【讨论】:

    猜你喜欢
    • 2018-05-31
    • 1970-01-01
    • 2012-06-23
    • 2019-12-11
    • 1970-01-01
    • 1970-01-01
    • 2015-01-27
    • 2014-01-28
    • 1970-01-01
    相关资源
    最近更新 更多