首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何阻止用户在日期中键入未来的日期,并按角输入

如何阻止用户在日期中键入未来的日期,并按角输入
EN

Stack Overflow用户
提问于 2019-09-18 13:28:49
回答 1查看 4.2K关注 0票数 0

我已经限制用户在未来输入日期使用html 5日期选择器。但用户可以在未来的日期输入。如果用户不选择从日期选择器日历中选择日期值,是否有方法阻止用户键入未来的日期?

这是我的代码:

代码语言:javascript
复制
  <div class="col-sm-7">

    <input type="date" class="form-control" [max]="maxDate" pattern="^(19[5-9][0-9]|20[0-4][0-9]|2050)[-/](0?[1-9]|1[0-2])[-/](0?[1-9]|[12][0-9]|3[01])$" name="Datebillabuse" [(ngModel)]="Datebillabuse" #date="ngModel" [ngClass]="{ 'is-invalid': f.submitted && date.invalid }" required />
    <div *ngIf="f.submitted && date.invalid" class="invalid-feedback">
        <div *ngIf="date.errors.required">Date is required</div>
        <div *ngIf="date.errors.pattern">Please enter a valid date</div>
        <div *ngIf='date.errors.max'>Date must not be in future</div>
    </div>
  </div>

TypeScript

代码语言:javascript
复制
  setTodayDate() {

    const dtToday = new Date();
    let month = String(dtToday.getMonth() + 1);
    let day = String(dtToday.getDate());
    let year = dtToday.getFullYear();


    if (parseInt(month, 10) < 10) {
        month = '0' + month.toString();
    }
    if (parseInt(day, 10) < 10) {
        day = '0' + day.toString();
    }

     this.maxDate = `${year}-${month}-${day}`;

  }

我想到的一个解决方案是检查日期值是否大于今天,并显示错误。

有什么更好的方法来解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-25 09:06:30

当我们通过设置maximum属性来限制用户时,html输入类型date元素存在问题,因为这不允许用户从日历下拉菜单中选择日期,但是用户仍然可以使用键盘输入不想要的值。所以这就是黑客,我曾经处理过这个问题

  1. 声明布尔值以检查日期是否无效。

boolean;

  • Declare :boolean;

  • Declare:检查输入日期是否有效的方法。

checkDateValidity(日期:字符串):布尔{

const mxDate =新日期(this.maxDate);const inputDate =新日期(日期);if (inputDate > mxDate) {返回this.futureDateError = true;}返回this.futureDateError = false;

}

  • 将此方法与(change)事件.

绑定

当日期无效且不提交表单时,

  1. 会显示错误。

日期不能在未来如果(this.checkDateValidity(this.Datebillabuse)) {返回;}

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57993930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档