使用 jQuery 日期选择器和 Angular 2 更改事件
Change event with jQuery datepicker and Angular 2
当我使用 jQuery 日期选择器插件时,我在捕获更改事件时遇到了一些问题,我正在尝试使用 (change) 方法来捕获更改,但似乎当我使用此插件时,angular 无法捕获它。
@Component({
selector: 'foo-element',
template: '<input type="text" (change)="checkDates($event)" id="foo_date_picker" class="datepicker">'
})
export class FooComponentClass implements AfterViewInit {
ngAfterViewInit():any{
$('#end_day').datepicker();
}
private function checkDates(e){
console.log("Please, catch the change event ): ");
}
}
我已经删除了日期选择器初始化并且工作正常,但是当我再次使用它时......不行。
有人可以帮助我!
非常感谢。
您可以实现以下指令:
@Directive({
selector: '[datepicker]'
})
export class DatepickerDirective {
@Output()
change:EventEmitter<string> = new EventEmitter();
constructor(private elementRef:ElementRef) {
}
ngOnInit() {
$(this.elementRef.nativeElement).datepicker({
onSelect: (dateText) => {
this.change.emit(dateText);
}
});
}
}
这样,您将能够捕获这样的change
事件:
@Component({
selector: 'app',
template: '<input type="text" id="end_day" (change)="checkDates($event)" class="datepicker" datepicker>',
directives: [ DatepickerDirective ]
})
export class App implements AfterViewInit {
checkDates(e){
console.log("Please, catch the change event ): "+e);
}
}
看到这个 plunkr: https://plnkr.co/edit/TVk11FsItoTuNDZLJx5X?p=preview
相关文章:
- 在Angular ui路由器中,如何将事件从一个视图发送到另一个视图
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 在将绑定应用于控制器之后,是否会发出Angular$scope事件
- 如何在Angular Material中的md背景后面接收ng点击事件
- 是否可以在jQuery事件中更改Angular范围
- 点击事件时将新的JSON数据加载到Angular中
- 如何为angular js条形图添加事件
- Angular JS根据搜索结果和点击事件更新DOM元素
- 我是否可以使用 Angular 将鼠标向上事件绑定到文档正文
- 如何在ngDraggable angular js中停止点击事件
- 使用 jQuery 日期选择器和 Angular 2 更改事件
- 使用 Angular 和 UI-bootstrap 对模态事件绑定无法工作的指令
- 更改 Angular 2 中选择的事件在 Firefox 和 Edge 中不起作用
- 获取 Angular UI-Calendar 上的所有事件(Arshaw 完整日历的指令)
- 指定父文档按钮点击事件来自Angular JS中的子文档控制器
- 在一个html模板中使用(点击)事件来控制单独模板Angular 2中的[hidden]元素
- 是否有任何事件“;在$scope摘要完成时”;或“;在视图刷新时”;在Angular.js中
- 分层元素用一次触摸触发2个事件——Angular
- 在将模型绑定到文本框后调用一个事件——Angular
- 如何使用id获取按钮并调用它的click事件——Angular