ユーザーが選択したら、Jqueryオートコンプリートのあるテキストボックスをクリアしたいと思います。
私はフィールドをクリアしようとしました:
select: function(event, ui) {
$(this).val('');
}
しかし、これは機能していません。私はjquery-1.6.4とjquery-ui-1.8.16を使用しています。
何か案は?
ユーザーが選択したら、Jqueryオートコンプリートのあるテキストボックスをクリアしたいと思います。
私はフィールドをクリアしようとしました:
select: function(event, ui) {
$(this).val('');
}
しかし、これは機能していません。私はjquery-1.6.4とjquery-ui-1.8.16を使用しています。
何か案は?
selectイベントは、フィールドが更新される前に発生します。クリアした後にフィールドが更新されないようにするには、イベントをキャンセルする必要があります。
select: function(event, ui) {
$(this).val("");
return false;
}
更新: TJが以下で指摘しているように、val()value
を経由する代わりに、DOMプロパティを直接更新する方がわずかに高速です。
select: function(event, ui) {
this.value = "";
return false;
}
私はjQuery UIバージョン1.8.23を使用していますが$(this).val("");
、select
イベントでは機能しませんでしたが、これは機能しました:
$("selector").autocomplete({
// ...
close: function(el) {
el.target.value = '';
}
});
試す
select: function(event, ui) {
input.value='';
}
これを試すこともできます:
$("#your_autocomplete_sub_listview_id").children().addClass("ui-screen-hidden");
選択すると、すべてのオートコンプリート フィルタリングされたリストが非表示になります。