オートコンプリートを入力し、「Enter」キーを押すと、何かを検索します。しかし、オートコンプリートがあり、「Enter」を押すと、検索したくありません。実際には、「Enter」を押すと検索が行われます。 enter イベントをキャプチャし、検索機能を実行します。
これは最初の関数です: オートコンプリート コード:
$('input[name=fieldInputName]').autocomplete(names, {
max: max,
minChars: minChars ,
width: 149,
scrollHeight: 500,
matchContains: true,
autoFill: false,
sortable: true,
matchSubset :false,
formatItem: function(row, i, max) {
return row[returnSearchkey];
},
formatMatch: function(row, i, max) {
return row[returnSearchkey] ;
},
formatResult: function(row) {
return row[returnSearchkey];
}
}).result(function(event, row, formatted) {
});
これは 2 番目の関数です: 検索を行う pressenter コード:
function pressEnter(e){
e = e || event;
if (e.keyCode == 13) {
submitSearch()();
}
}
入力の Html :
<input onkeyup="pressEnter(event);"type='text' name='createdBy' />
オートコンプリートをトリガーして 'enter' を押して 1 つの項目を選択すると、オートコンプリートが実行され、選択した値が入力されますが、2 番目の関数 "pressEnter(e)" も呼び出されます。オートコンプリートをトリガーしましたが、2 番目の関数 (pressEnter) を実行しませんでした。