何らかの理由で、jQueryUIのオートコンプリートが機能しなくなりました。このWebページで説明されているのと同じエラーが発生します。
以下のウェブページからクエリの内容をコピーしました。ここの誰かがそれに答えられることを願っています。
ありがとう!
Jquery UI Autocomplete
名前のリストを取得するために使用しています。しかし、何らかの理由でエラーが発生します。
$('#repName').removeAttr('readonly').focus(function () { $(this).val(''); }).autocomplete({ source: function (request, response) { tagId = $('#TagId').val(); $.ajax({ url: '/Developement/GetRepName', type: 'POST', dataType: 'json', data: { searchText: request.term, maxResults: 10, tagId: tagId }, success: function (data) { response($.map(data, function (item) { return { label: item.Name, value: item.RepId, id: item.RepId } })) } }) }, select: function (event, ui) { commissionAllicationModifications(ui.item.id, 0, 'A'); } });
なぜこれが起こっているのか私にはわかりません。JqueryUI1.8.1を使用しています。
私はこれについてどんな種類の助けもいただければ幸いです。
これは、jQuery UI 1.8.1ファイル、具体的にはjQuery UIAutocomplete1.8.1からのものです。
.menu({ focus: function (event, ui) { var item = ui.item.data("item.autocomplete"); if (false !== self._trigger("focus", null, { item: item })) { // use value to match what will end up in the input, if it was a key event if (/^key/.test(event.originalEvent.type)) { self.element.val(item.value); } } }, selected: function (event, ui) { var item = ui.item.data("item.autocomplete"); if (false !== self._trigger("select", event, { item: item })) { self.element.val(item.value); } self.close(event); // only trigger when focus was lost (click on menu) var previous = self.previous; if (self.element[0] !== doc.activeElement) { self.element.focus(); self.previous = previous; } self.selectedItem = item; }, * blur: function (event, ui) { * if (self.menu.element.is(":visible")) { * self.element.val(self.term); * } * } }) .zIndex(this.element.zIndex() + 1) // workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781 .css({ top: 0, left: 0 }) .hide() .data("menu");
これは別のプロジェクトで問題なく機能するため、奇妙です。私が気付いたのは、コードが[スター付き]セクションにヒットしたとき、self.menuセクションが未定義であるということです。もう1つの注意点は、リクエストを送信しないことです。フォーカス機能かもしれないと思っていました。
.focus(function () { $(this).val('');
そうではありません。助けてくれてありがとう。