Почему код на одних сайтах работает на других нет?

Вот такой код, поиск и выбор города, везде работал, а на новом сайте, при его установке, все всплывающие окна перестают работать, в консоли идет ошибка на строку jQuery.widget("custom.catcomplete", jQuery.ui.autocomplete, {

не могу разобраться в чем дело

jQuery(document).ready(function() {
    var cities_data = [
    { category: "Московская область" },
        { label: "Москва", ref: "#" },
        
    ];

    cities_data = add_category(cities_data);

    jQuery(".city-form").submit(function(e) { e.preventDefault(); return false; });

    jQuery.widget("custom.catcomplete", jQuery.ui.autocomplete, {
        _create: function() {
            this._super();
            this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)");
        },
        _renderMenu: function(ul, items) {
            var that = this,
                currentCategory = "";
            jQuery.each(items, function(index, item) {
                var li;
                if (item.category != currentCategory) {
                    ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>");
                    currentCategory = item.category;
                }
                li = that._renderItemData(ul, item);
                if (item.category) {
                    li.attr("aria-label", item.category + " : " + item.label);
                }
            });
        }
    });

    jQuery(".city-input").catcomplete({
        minLength: 0,
        delay: 0,
        source: function(request, response) {
            var matcher = new RegExp("^" + jQuery.ui.autocomplete.escapeRegex(request.term), "i");
            response(
                jQuery.grep(cities_data, function(item) {
                    return matcher.test(item.label);
                })
            )
        },
        select: function(event, ui) {
            window.location.href = ui.item.ref;
        }
    }).focus(function() {
        jQuery(this).catcomplete("search", "");
    });

    function add_category(data) {
        var currentCategory = "";
        var result = [];
        jQuery.each(data, function(key, value) {
            if (typeof value.category === "undefined") {
                result.push({ label: value.label, ref: value.ref, category: currentCategory });
            } else {
                currentCategory = value.category;
            }
        });
        return result;
    }
});
  • Вопрос задан
  • 87 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы