Angular: событие нажатия не работает на мобильных устройствах - PullRequest
1 голос
/ 19 апреля 2019

Событие нажатия не работает на мобильных устройствах (Ipad и телефон Samsung).Страница перенаправляется на правильный маршрут, но она пуста.Когда я нажимаю «Ввод» вместо этого, он работает.

Это HTML-форма:

<form #myForm>
          <div class="form-group">
              <div class="input-group col-md-10">
                  <select class="form-control col-md-4" [(ngModel)]="selected" (ngModelChange)="languageSelected($event)" [ngModelOptions]="{standalone: true}">
                      <option *ngFor="let option of options" [value]="option.id">{{option.value}}</option>
                  </select>

                  <input type="text" class="form-control" #elem (keyup)="onNameKeyUp(elem.value)"
                  [ngModelOptions]="{standalone: true}"
                  [(ngModel)]="latinButton"
                  (focus)="onNameKeyUp(elem.value)"
                  placeholder="Enter"/>


                  <span class="input-group-append">
                      <button class="btn btn-outline-secondary" type="submit" (click)="getWordList(elem.value)">
                          <i class="fa fa-search"></i>
                      </button>
                    </span>


                  </div>
              </div>
              </form>

Эта функция onNameKeyUp:

onNameKeyUp(event: any){
      this.spelling = event;
      this.spelling = this.spelling.toString().toLowerCase();
      this.elem.nativeElement.focus(); 

  }

РЕДАКТИРОВАТЬ: I'mamдобавление функции getWordList ():

 getWordList(name: string){

    this.spelling = name;
    this.webservice.getWords(this.spelling, this.selected)
    .subscribe((res: Array<Word>)=> {
      this.elements = res.filter(d=> d.orth == this.spelling || d.asuddimIsem == this.spelling);
      this.grammar = res[0]['gram'];
      this.dataLoaded.emit(this.elements);
      this.webservice.setData(this.elements);
      this.router.navigate(['/words']);
    })
  }
...