我们在项目中使用ng-bootstrap Datepicker as Directive:
<input class="form-control"
name="dp" ngbDatepicker #d="ngbDatepicker" (blur)="d.close()" [(ngModel)]="model"
(ngModelChange)="onDateSelected()">
当前行为是,当选择了datepicker中的日期时,以及每次对输入字段进行更改时,都会调用onDateSelected()
。
所需的行为是,只要用户点击日期选择器中的日期或将光标移出onDateSelected()
(即模糊),就会调用<input>
。< / p>
我的方法是将(ngModelChange)
更改为(blur)
:
<input class="form-control"
name="dp" ngbDatepicker #d="ngbDatepicker" (blur)="d.close(); onDateSelected()"
[(ngModel)]="model">
但是当从datepicker中选择日期时,这会导致调用onDateSelected()
而不是 - 这有点意义,因为光标不在<input>
内。但是,在搜索dateSelected
时,我无法找到某种onDateSelected()
- 事件,我可以拨打<input class="form-control"
name="dp" ngbDatepicker #d="ngbDatepicker" (blur)="d.close(); onDateSelected()"
/* missing -> */ (dateSelected)="onDateSelected()" /* <- */ [(ngModel)]="model">
:
import UIKit
class ViewController: UIViewController {
var object: DraggableView?
override func viewDidLoad() {
super.viewDidLoad()
// Create the object
object = DraggableView(parent: self)
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// Add subview
object?.setup()
}
}
我想念的是什么吗?或者可能是另一种实现此行为的方法?我不能想到成为唯一有此要求的人......
答案 0 :(得分:5)
同时,issue已关闭,并且1.1.0中会有一个(dateSelect)事件:https://github.com/ng-bootstrap/ng-bootstrap/pull/2254
答案 1 :(得分:0)
答案 2 :(得分:0)
使用dateSelect
对我有用:
<input class="form-control"
name="dp" ngbDatepicker #d="ngbDatepicker" (blur)="d.close(); ()onDateSelected()"
[(ngModel)]="model">
答案 3 :(得分:-1)
<input class="form-control"
name="dp" ngbDatepicker #d="ngbDatepicker" (blur)="d.close()"
[(ngModel)]="model"
(select)="onDateSelected()">
这将起作用,并且只要您在日期选择器中选择一个日期,就会调用onDateSelected()