首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery UI中的自动完成功能运行缓慢。如何通知用户某项工作正在暗中进行?

jQuery UI中的自动完成功能运行缓慢。如何通知用户某项工作正在暗中进行?
EN

Stack Overflow用户
提问于 2019-06-01 18:01:18
回答 1查看 454关注 0票数 0

jQuery UI 1.12.1

在html中,我有一个input标签。用户输入一些代码。然后我使用jQuery UI来组织自动补全。

我的代码:

代码语言:javascript
复制
function select_autocomplete_variant() {
    $("#user_input").autocomplete({
        minLength: 1,
        source: get_array_for_autocomplete(),
    });
}

问题是自动完成的数组太大了。每次用户输入另一个符号时,此代码都会挂起几秒钟。这本身不是问题:用户会等待。但问题是,用户在等待时没有意识到程序正在为他工作。

是否可以在自动完成工作时向用户显示旋转光标。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-06 07:32:46

如果您预期结果将“花费很长时间”,则可以考虑将minLength调整为更高的值。

您还可以使用function for Source,允许您执行自己的AJAX调用。这使您能够启动和停止GIF或显示通知。示例:

代码语言:javascript
复制
function select_autocomplete_variant() {
    $("#user_input").autocomplete({
        minLength: 1,
        source: function(req, resp){
          var $el = $(".ui-autocomplete-input", this);
          $.ajax({
            url: 'mySearch.php',
            data: { term: req.term },
            beforeSend: function(){
              $el.addClass("ui-autocomplete-loading");
            },
            success: function(data){
              $el.removeClass("ui-autocomplete-loading");
              resp(data)
            }
          });
        }
    });
}

查看http://api.jqueryui.com/autocomplete/主题下的更多信息

希望这能有所帮助。

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

https://stackoverflow.com/questions/56405692

复制
相关文章

相似问题

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