2017-06-28 15 views
0

私は検索機能が実装されているプロジェクトに取り組んでいます。 input要素のようになります。キーを入力してクエリを入力して打つには角2:入力エラー

<input #input type="text" name="query" class="form-control" id="nav-input" (ngModelChange)="onquery($event)" 
      [(ngModel)]="searchdata.query" autocomplete="off" (keypress)="onEnter($event)"> 

onEnter(event: any) { 
    if (event.which === 13) { 
     this.displayStatus = 'hidebox'; 
     event.target.blur(); 
     this.submit(); 
    } 

submit() { 
    if (this.searchdata.query.toString().length !== 0) { 
     if (!this.router.url.toString().includes('/search')) { 
     this.router.navigate(['/search'], {queryParams: this.searchdata}); 
     } 

、それはコンソールにエラーが表示されます。

Form submission canceled because the form is not connected 

私はこの問題を解決する方法を、把握することはできませんよ。誰かが私を助けることができれば素晴らしいだろう。 :)

+0

私は、あなたが 'submit'を押すとフォーム提出を引き起こしていると思います。あなたはそれを確認しましたか? – crash

+0

十分なコードを提供しているわけではありません。フォーム全体と全体の 'submit'メソッドを提供してください –

+0

'

'のコードを更新してください。' – crash

答えて

1

onEnter関数にevent.preventDefault()を追加すると、存在しないフォームを送信しようとしている可能性があるため、問題を解決するはずです。

0

テンプレートとコンポーネントから関数onEnter()の名前を変更します。これ以外の名前は使用しないでください。

+0

私は、htmlやjsにonEnterイベントがあると思います。これについてはわからない。 –