Angular 在jquery插件事件上更新[(ngModel)]

Angular 在jquery插件事件上更新[(ngModel)],angular,angular2-ngmodel,Angular,Angular2 Ngmodel,有没有办法在jquery事件上刷新ngModel,例如 “dp.change”事件上的日期时间选择器 在选择更改事件时选择2 我使用相同的插件,这就是我刷新模型的方式 angular.element('#datetimepicker_id').on('dp.change', function(e){ $scope.date_model = angular.element('#datetimepicker_id').data('date'); }); 希望这有帮助。我们可以做类似的事情。它对我

有没有办法在jquery事件上刷新ngModel,例如

  • “dp.change”事件上的日期时间选择器
  • 在选择更改事件时选择2

  • 我使用相同的插件,这就是我刷新模型的方式

    angular.element('#datetimepicker_id').on('dp.change', function(e){  $scope.date_model = angular.element('#datetimepicker_id').data('date'); });
    

    希望这有帮助。

    我们可以做类似的事情。它对我有用

    在html模板中

     <input type="text" class="form-control" [listItem]="list" autocomplete id="txtbox" name="txtbox" placeholder="myplaceholder" [(ngModel)]="myModel">
    
    import { Directive, ElementRef, Input } from '@angular/core';
    import { NgModel } from '@angular/forms';
    declare var $;
    @Directive({
      selector: '[ngModel][autocomplete]',
      providers: [NgModel]
    })
    export class Autocomplete {
      @Input() listItem: any = [];
      constructor(public _elementRef: ElementRef, private ngModel: NgModel) {
      }
      ngAfterViewInit() {
        let that = this;
        $(this._elementRef.nativeElement).typeahead({
          source: this.listItem.map(item => {
            return { id: item.account.toString(), name: item.account.toString() };
          })
        });
    
        this.ngModel.valueChanges.subscribe(function(value) {
          /* Set any value of your custom control */
          $(this._elementRef.nativeElement).data("newValue", value);
        });
    
        /* Inform ng model for any new change happened */
        $(this._elementRef.nativeElement).bind("change", ()=>{
          that.ngModel.update.emit($(that._elementRef.nativeElement).val());
        });
      }
    }