【问题标题】:Angular 2 - How do I catch the touched value of a child Input elementAngular 2 - 如何捕获子 Input 元素的触摸值
【发布时间】:2017-06-15 10:19:54
【问题描述】:

我正在尝试使用 ng2-datepicker,但没有收到来自输入元素的触摸响应。 datepicker-input 被标记为已触摸,但它没有反弹到 Angular。

<ng2-datepicker class="form-control ng-untouched ng-pristine ng-invalid" formcontrolname="datefound" _nghost-lur-40="" ng-reflect-name="datefound">
  <div _ngcontent-lur-40="" class="datepicker-container u-is-unselectable">
    <div _ngcontent-lur-40="" class="datepicker-input-container">
      <input _ngcontent-lur-40="" class="datepicker-input ng-untouched ng-pristine ng-valid" type="text">
      <div _ngcontent-lur-40="" class="datepicker-input-icon">
        <i _ngcontent-lur-40="" class="ion-ios-calendar-outline"></i>
      </div>
    </div>
    <!--template bindings={
  "ng-reflect-ng-if": null
}-->
  </div>
  </ng2-datepicker>

Angular 2 中有没有办法获取 datepicker-input 并将 onTouchedCallback 操作附加到它?我不想修改 ng2-datepicker 模块,所以我想从父级执行所有代码。

我可以做类似以下的事情吗:- form.get('datefound')('.datepicker-input').touched

【问题讨论】:

  • 在日历中选择日期时,您是否能够处理事件?
  • 是的。在日历中选择日期后,它会按预期工作。只有当我直接在输入框中输入内容时它才没有效果

标签: angular ng2-datepicker


【解决方案1】:

但这不是最好的答案! 为了解决这个问题,我更新了模块本身(我不想这样做)以添加以下内容:-

这触发了所需的操作,然后允许我正确验证。

这不是我最初想要的,但它是我目前的解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-10
    • 2016-06-20
    • 2019-01-20
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 2011-04-18
    • 1970-01-01
    相关资源
    最近更新 更多