jquery オートコンプリート プラグインを使用しています。複数の値を使用するように構成されています。
オプション minLength を設定しました: 2
minLength オプションは、最初の autosuggest 単語に対してのみ機能し、複数の値に対しては機能しません。
この問題を解決するには、どのように構成するか、どのメソッドをオーバーライドする必要がありますか。
jquery オートコンプリート プラグインを使用しています。複数の値を使用するように構成されています。
オプション minLength を設定しました: 2
minLength オプションは、最初の autosuggest 単語に対してのみ機能し、複数の値に対しては機能しません。
この問題を解決するには、どのように構成するか、どのメソッドをオーバーライドする必要がありますか。
jQuery UI Web サイトの複数のリモート デモは、この動作を示しています。カスタム検索機能を追加するだけです:
$('#autocomplete').autocomplete({
search: function() {
// custom minLength
var term = extractLast( this.value );
if ( term.length < 2 ) {
return false;
}
}
});
2012 年の Christian のバージョンは非常に便利であることがわかりましたが、2016 年に動作する改訂バージョン (jQuery UI 1.12.0) を次に示します。
function split(val) {
return val.split(/\s+/);
}
function extractLast(term) {
return split(term).pop();
}
source: function(request, response) {
// delegate back to autocomplete, but extract the last term
const term = extractLast(request.term)
if (term.length < this.options.minLength) {
return false;
}
response($.ui.autocomplete.filter(
data, term));
}
このminLength
オプションは、通常どおり提供するだけでよく、source
関数内で使用されます。さらにコンテキストが必要な場合は、デモを参照してください。