【问题标题】:How to make Form Control to take blank field but no all white space charcaters?如何使表单控件采用空白字段但没有所有空白字符?
【发布时间】:2020-12-28 16:53:32
【问题描述】:

我正在尝试以反应形式验证一个字段,该字段可以为空白,因为它不是必填字段,但不应将所有字符都视为空格。我为此创建了一个客户验证器,如下所示:

Custom-validator.ts

export function whiteSpaceValidator(control: AbstractControl): { [key: string]: any } | null {
    const check = control.value.trim();
    return check === '' ? { 'whiteSpaceCheck': { value: control.value } } : null;
}

但我注意到,当该字段为空白时,意味着不存在任何值,这会被触发,而我实际上并不想要。

除了迭代字符串中的每个字符并检查它是否等于空格之外的任何解决方案。

【问题讨论】:

    标签: javascript angular typescript validation angular-reactive-forms


    【解决方案1】:

    您可以查看检查是否为空以及检查是否不等于原始值。这样,如果它是空的并且不等于原始的,则修剪删除所有的空白。

    export function whiteSpaceValidator(control: AbstractControl): { [key: string]: any } | null {
        const check = control.value.trim();
        return check === '' && check != control.value? { 'whiteSpaceCheck': { value: control.value } } : null;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-09
      • 2020-12-31
      • 1970-01-01
      相关资源
      最近更新 更多