自动关注JQuery自动完成(不是第一个)

时间:2014-06-25 17:28:47

标签: jquery jquery-ui autocomplete

我意识到之前已经问过这个问题,我在这里可以找到最清晰的解决方案:

Focus on a jQuery autocomplete result (not necessarily the first)

我需要您可以在所选答案中查看的第一个解决方案:我的项目必须在客户端选择,并且该解决方案看起来很理想。我的目标主要是让焦点从菜单中的项目开始,该菜单已经在输入文本框中(触发了ui菜单的打开),如果有的话。不要选择项目,而只关注它。我也无法使用“搜索”功能,因为这会消除焦点选项周围的其他选项。

可悲的是,它失败了: var menu = $(this).data(“uiAutocomplete”)。菜单。 Firebug告诉我:TypeError:$(...)。data(...)未定义。

这是我的完整开放事件函数回调声明作为参考。

            open: function (event, ui) {
                var termTitle = $(event.target).val();

                var menu = $(this).data("uiAutocomplete").menu
                    , i = 0
                    , $items = $('li', menu.element)
                    , item
                    , text
                    //, startsWith = new RegExp("^" + this.value, "i");
                    , startsWith = new RegExp("^" + termTitle, "i");

                for (; i < $items.length && !item; i++) {
                    text = $items.eq(i).text();
                    if (startsWith.test(text)) {
                        item = $items.eq(i);
                    }
                }

                if (item) {
                    menu.focus(null, item);
                }

            }

如您所见,它主要来自上面给出的链接。我不知道问题可能是什么。如果您有任何想法 pleeese halp!

非常感谢, 利

更新:我正在使用JQuery 1.8.3。这可能是相关的吗?

0 个答案:

没有答案