【问题标题】:jquery autocomplete doesn't display any resultjquery自动完成不显示任何结果
【发布时间】:2017-11-02 10:54:52
【问题描述】:

html 代码太长,无法在 stackoverflow 上复制和粘贴,所以我将链接 my site。如果你去网站,你会看到一些设计师名字上方的搜索栏。基本上我正在尝试使用 jquery-ui 插件实现自动完成。并且它不会在搜索栏下方显示任何结果。我从来没有使用过这个插件,所以我真的不知道为什么它不起作用。

我正在处理/js/autocomplete.js 中的自动完成部分。里面的代码不多。数据并添加到事件监听器。就是这样。

let designers = [ .. ] // click to see whole data

$(function() {
    $('#keyword').autocomplete({
        source: designers,
        minLength: 6
    })
})

任何帮助将不胜感激:)

【问题讨论】:

  • 它对我有用。截图:screencast.com/t/s8wdK7S9fRVI
  • @OfirBaruch 它在我的网站上有效吗?我不明白为什么它对我不起作用,即使我使用的是最新版本的 chrome
  • @OfirBaruch 该死的,可能是因为缓存
  • @OfirBaruch 刚刚清除了浏览器缓存,仍然无法正常工作。好奇怪
  • 可能是时间问题。让我们调试它:使用 document.ready() 并尝试使用 'var' 而不是 'let' 并将其放入函数中。

标签: javascript jquery jquery-ui autocomplete jquery-ui-autocomplete


【解决方案1】:

实际上,当按下搜索输入时,控制台中出现错误,导致代码中出现此位置。这就是自动完成不起作用的原因。

$(".m4").click(function(event){            
    event.preventDefault();
    $('html,body').animate({scrollTop:$(this.hash).offset().top}, 500);
   });

【讨论】:

  • 我认为您找不到合适的元素。搜索栏是#keyword
【解决方案2】:

尝试 JQuery UI 自动完成 (https://jqueryui.com/autocomplete/#default)

【讨论】:

  • 这是一个 OP 使用。
  • 在 jQuery UI 中我们选择一个选项。但有一个搜索选项。如果你不喜欢这里是你的另一个选择select2.org/getting-started/basic-usage
  • 您的网站还有另一个问题,您的网站中有水平滚动并且容器外的项目
【解决方案3】:

对我有用... 您的 minLength 为 6,这意味着它不会在您输入 6 个字符之前搜索数组,尝试在没有 minLength 参数的情况下运行代码并按预期工作

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-09
    • 2011-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多