【问题标题】:Angular 5 Pre populating input=date from ISOstring>Angular 5 Pre填充输入=来自ISOstring的日期>
【发布时间】:2018-12-27 20:00:43
【问题描述】:

我正在尝试预填充出生日期输入:

<input class="common" id="birthdate" name="birthdate" type="date" [(ngModel)]="account.date_of_birth" />

变量当前设置为Tue Jul 16 1996 20:00:00 GMT-0400 (EDT)

问题是输入没有设置,只显示dd/MM/yyyy

我尝试过使用valuedatetime-local(这不起作用,但我也不想输入时间)

【问题讨论】:

    标签: html angular input angular5


    【解决方案1】:

    使用日期管道。尝试将您的 [ngModel] 绑定更改为,

    在您的 .ts 文件中导入 DatePipe 并尝试以下操作,

    import { DatePipe } from '@angular/common';
    
    public birthdate:any;
    
    var datePipe = new DatePipe();
    this.birthdate = datePipe.transform(date_of_birth, 'dd/MM/yyyy');
    

    然后你可以在你的[(ngModel)]中使用this.birthdate

    希望这会有所帮助!

    【讨论】:

    • 感谢您的快速回答,但不幸的是它没有填写输入值:(
    • 再次感谢,但它并没有填充该值,因为这与上面建议的内容相似,我现在可能只是将其移动并放入带有正则表达式的文本字段中
    【解决方案2】:
    1. 您可以内置日期管道。
    2. 在组件端使用 moment(account.date_of_birth).format("DD/MM/YYYY")。

    【讨论】:

    • 不幸的是,内置管道,因为下面建议的答案没有填写值,至少现在,如果我无法让它工作,使用另一个包是最后的手段,不过谢谢你的回答
    • jsfiddle 请检查一下,我已经创建了一个示例
    猜你喜欢
    • 2018-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-12
    • 2021-02-05
    • 2022-01-11
    相关资源
    最近更新 更多