私の現在のコードは jQuery 1.7.x を使用しています。jQuery 1.8 にアップグレードしたいのですが、オートコンプリート機能で問題が発生しています。同じコードで 2 つの jsfiddles を作成しました。ある例では正しく動作しますが、別の例では正しく動作しません。主な問題は、検索してクリックすると、警告ボックスが表示され、クリックされた内容が表示されるはずです。古い jQuery では機能しますが、1.8 では機能しません。
これが動作する1.7バージョンです - http://jsfiddle.net/u2GEe/1/
これが壊れた1.8バージョンです - http://jsfiddle.net/TPWXh/3/
コードは次のとおりです。
$.widget("custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function(ul, items) {
var self = this,
currentCategory = "";
$.each(items, function(index, item) {
if (item.category != currentCategory) {
ul.append("<li class='ui-autocomplete-category search-dropdown-category'>" + item.category + "</li>");
currentCategory = item.category;
}
self._renderItem(ul, item);
});
}
});
$(document).ready(function() {
var data = [
{
label: "anders",
category: "aa"},
{
label: "andreas",
category: "aa"},
{
label: "antal",
category: "aa"},
{
label: "annhhx10",
category: "Products"},
{
label: "annk K12",
category: "Products"},
{
label: "annttop C13",
category: "Products"},
{
label: "anders andersson",
category: "People"},
{
label: "andreas andersson",
category: "People"},
{
label: "andreas johnson",
category: "People"}
];
$("#search_input").catcomplete({
source: data,
select: function(event, ui) {
alert(ui.item.label);
}
});
});
誰が契約が何であるか知っていますか?