角度-在HTML中将最小/最大日期设置为当前日期

时间:2019-05-09 05:54:53

标签: html angular typescript

我在项目中输入了一个日期,我想将最小/最大日期设置为当前日期。如何在Angular 6中实现这一目标?

我试图将let date = new Date();添加到ngOnInit中,并将HTML文件中的最大值添加到{{this.date}}中,但是它不会禁用将来的日期。

HTML

<input type="date" formControlName="dob" class="form-control" id="dob" max="{{this.date}}">

TS

ngOnInit() {
  let date = new Date;
}

4 个答案:

答案 0 :(得分:1)

继续做下去:

<input type="date"  class="form-control" id="dob" max="{{date | date:'yyyy-MM-dd'}}">

您需要传递日期以遵循input格式。

答案 1 :(得分:1)

您引用的日期变量在ngOnInit()方法中具有本地范围。您必须在类范围内声明变量,以便可以通过this指针/关键字使用它。

具体

import {
  Component,
  OnInit
} from '@angular/core';

@Component({
  selector: 'app-root',
  template: '<input type="date" max="{{this.date}}">',
})
export class AppComponent implements OnInit {
  date;

  ngOnInit() {
    this.date = new Date().toISOString().slice(0, 10);
  }
}

目前无法测试,请根据您的情况进行测试

编辑:能够测试,以上解决方案在我的测试中有效

答案 2 :(得分:0)

尝试:

<input type="date" formControlName="dob" class="form-control" id="dob" [max]="date">

答案 3 :(得分:0)


尝试一下

<input type="date" name="bday" max="1979-12-31">