入力とボタンのラッパーであるウィジェットがありました。入力フォーカスとボタンクリックの両方でドロップダウンを表示したい。ボタンをクリックすると正常に機能し、入力が正常に機能しないのは一度だけです。オプションを選択しても機能しません....入力をぼかすと、何かを選択するかボタンクリックを使用するまで正常に機能します....以下は私のコードです....plzの回避策. ................................................
input = $("<input>")
.appendTo(wrapper)
.val(value)
.attr("title", "")
.autocomplete({
delay: 0,
minLength: 0,
appendTo: wrapper,
source: function (request, response) {
var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
response(select.children("option").map(function () {
var text = $(this).text();
if (this.value && (!request.term || matcher.test(text)))
return {
label: text,
value: text,
option: this
};
}));
},
.focus(function () {
$(".ui-combobox").addClass("focus");
if (wasOpen) {
return;
}
input.autocomplete("search", "");
})
.blur(function () {
$(".ui-combobox").removeClass("focus");
});
// creating the anchor button
$("<button></button>")
.attr("tabIndex", -1)
.addClass("br-r")
.appendTo(wrapper)
.mousedown(function () {
wasOpen = input.autocomplete("widget").is(":visible");
})
.click(function () {
input.focus();
if (wasOpen) {
return;
}
input.autocomplete("search", "");
});
},
上記は、必要な機能を扱う単なるスニペットです........