0
AngularJSとElasticsearchを使用した映画用の小さな検索アプリを作成しました。私は、オートコンプリートのためにAngularJS UI Bootstrap Typeaheadを使用し、テストではユーザーのやり取りについて何か気づいた。Enterキーで検索しません
私はトムという名前の俳優を検索したいと言います。検索入力に「tom」と入力すると、5つの候補が表示されます。しかし、キーボードでEnterキーを押すだけであれば、「tom」を検索することはできません。ドロップダウンで最初の候補を自動的に選択します。私が「送信」ボタンをクリックするだけで、ITは「トム」を検索します。私のフォームマークアップは以下の通りです - どこが間違っていますか?
私は(彼らはEnterキーを押したときに)提供するだけの提案に限定されることなく、私のユーザーが入力したクエリを検索することができるようにしたい...
<div class="col-sm-3 col-md-6 pull-left" style="border: 1px solid red;"><form name="q" ng-submit="vm.search()" class="navbar-form" role="search">
<div class="input-group input-group-md">
<input type="text" ng-model="vm.searchTerms" class="form-control input-md" placeholder="{{ vm.searchTerms }}" name="q" typeahead-show-hint="true" uib-typeahead="query for query in vm.getSuggestions($viewValue)" typeahead-on-select="vm.search($item)">
<span class="input-group-btn">
<button class="btn btn-primary btn-md" type="submit" id="results-search-btn" ng-submit="vm.search()"><i class="fa fa-search fa-lg"></i>
</button>
</span>
</div>
感謝:
が彼らの詳細についてはマニュアルを参照してください。それは、しかし、それはまた、最初の提案からハイライトを取り去ります - 私は保つつもりです。ハイライトを維持する方法はありますか? – user3125823ハイライトがEnterキー機能を指示していますが、私が考えることができるのは、Enterキー機能をオーバーライドして、あなたが望むことをやり直すことだけです。これと似たようなものですが、単に誤ったトリガーを返す代わりに、あなたも関数を検索します:http://stackoverflow.com/questions/11235622/jquery-disable-form-submit-on-enter –
@ user3125823申し訳ありません、タグを忘れました。 –