Algolia自动完成问题

时间:2016-09-12 10:31:55

标签: autocomplete algolia

我有以下搜索代码:

        autocomplete('#search-input', {hint: false, autoselect: true}, [
        {
            source: autocomplete.sources.hits(contacts, { hitsPerPage: 3 }),
            displayKey: 'CustomerName',
            templates: {
                header: '<div class="leftMargin5"><b>Contacts</b></div>',
                suggestion: function(hit) {
                    return templateContact.render(hit);
                }
            }
        },
        {
            source: autocomplete.sources.hits(products, { hitsPerPage: 5 }),
            displayKey: 'ProductDescription',
            templates: {
                header: '<div class="leftMargin5"><b><Products</b></div>',
                suggestion: function(hit) {
                    return templateProduct.render(hit);
                }
            }
        }

    ]).on('autocomplete:selected', function (event, suggestion, dataset) {
        //DoSomething
    }).on('autocomplete:autocompleted', function (event, suggestion, dataset) {
        //DoSomething
    });

我的问题是,当我开始在搜索框中输入内容时,会选择顶部元素,并将搜索框中的文本设置为此匹配项。我无法在搜索框中输入或删除文本。键入或删除只是选择原始匹配。

我正在尝试突出显示第一个点击以在输入时选择它,但我希望能够继续输入或选择另一个项目,如果顶部不是我正在寻找的那个。

如果我删除选项autoselect:true,搜索框可以工作,但当然没有自动选择功能。

1 个答案:

答案 0 :(得分:2)

确实,这是autoselect&amp;之间的错误。 displayKey个选项。您可以移除displayKey以解决问题,并应在official repository上打开问题。

更新:自0.21.6以来已修复此问题。