首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁止像ajaxStart或ajaxStop这样的全局处理程序被catcomplete触发?

问如何禁止像ajaxStart或ajaxStop这样的全局处理程序被catcomplete触发?
EN

Stack Overflow用户
提问于 2015-02-13 00:48:12
回答 1查看 423关注 0票数 0

在使用jQuery BlockUI插件加载ajax时,使用给定的代码:

代码语言:javascript
复制
$(document).ajaxStart($.blockUI).ajaxStop($.unblockUI);

显示使用autocomplete和catcomplete为每个搜索字符加载BlockUI的ajax。在这种情况下,如何防止全局处理程序使ajax加载的BlockUI不出现。

我有下面的自动补全代码:

代码语言:javascript
复制
$("#query").catcomplete({
        minLength: 3,
        source: "/searches/auto_complete",
        appendTo: "#identifier",
        select: function (event, ui) {
            var query_value = $("#query").val(ui.item.label);
            query_value = $.trim(query_value);
            $("#query").val(query_value);
            $("#search_id").val(ui.item.search_id);
            $("#from").val(ui.item.from);
            $(".search-form").submit();
        }

    });
EN

回答 1

Stack Overflow用户

发布于 2015-02-14 11:32:18

@adeneo终于找到了解决方案。我们应该设置global: false。以下是完整的解决方案。

代码语言:javascript
复制
$("#query").catcomplete({
        appendTo: "#identifier",
        source: function (request, response)
        {
            $.ajax(
            {
                global: false,
                minLength: 3,
                source: "/searches/auto_complete",
                url: "/searches/auto_complete",
                dataType: "json",
                data:
                {
                    term: request.term
                },
                success: function (data)
                {
                    response(data);
                }
            });
        },
        minLength: 2,
        select: function (event, ui) {
            var query_value = $("#query").val(ui.item.label);
            query_value = $.trim(query_value);
            $("#query").val(query_value);
            $(".search-form").submit();
        }

    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28483103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档