如何在角度4中验证日期

时间:2018-06-29 06:36:28

标签: angular typescript

我是angular的新手,在我的应用程序中,我需要验证日期并基于验证显示跨度消息。

我在这里使用ngx-bootstrap datepicker。

HTML:

<label for="mDOB" class="control-label">Date of birth</label>
            <input [bsConfig]="bsConfig"  type="text" maxlength="10" name="mDOB" [(ngModel)]="mUser.mDOB" #mDOB="ngModel"
              placeholder="Date of birth" class="form-control" bsDatepicker required>
            <div class="help-block alert-danger col-sm-12" *ngIf="mDOB.errors?.required && mDOB.touched">
              * Date of Birth is required
            </div>

在这里,我已经完成了必填字段验证。它工作正常

现在,我需要验证日期字段仅接受数字,并且格式应为“ mm / dd / yyyy”。

app.component.ts

submitForm(newUser: User): void {

    //  pattern="^(0?[1-9]|1[0-2])/(0?[1-9]|1[0-9]|2[0-9]|3[01])/\d{4}$";
    // newUser.mDOB using this I can get the selected date .
    // it always returns 2018-06-11T18:30:00.000Z in this format 
    // So here I need to convert from this format to "mm/dd/yyyy"
  }

谁能帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

您想要哪种类型的日期验证?只是价格是有效日期?如果您在enter元素上设置了sort =“ date”,浏览器将确保仅输入合法日期。

与您显示的范围验证器和任何货币验证器相同。您需要能够在输入的详细信息上设置类型为“品种繁多”,并且您可能不需要验证器。

如果您仍然希望执行自己的验证,则可以像使用实例一样使用普通表达式。

仅显示货币和日期的正则表达式。日期,例如:javascript-用于验证日期布局的正则表达式