Javascript jquery ui自动完成id和关闭事件ui参数

Javascript jquery ui自动完成id和关闭事件ui参数,javascript,jquery,jquery-ui-autocomplete,Javascript,Jquery,Jquery Ui Autocomplete,我正在使用jQuery Ui Autocomplete 1.8.14,我想做两件事: 为自动完成分配一个id。例如,我可能在页面上有许多自动完成,我需要一种方法来识别每一个。特别是,在后台,autocomplete生成如下内容 <ul class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all" role="listbox" aria-activedescendant="ui-active-menuite

我正在使用jQuery Ui Autocomplete 1.8.14,我想做两件事:

为自动完成分配一个id。例如,我可能在页面上有许多自动完成,我需要一种方法来识别每一个。特别是,在后台,autocomplete生成如下内容

<ul class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all" role="listbox" aria-activedescendant="ui-active-menuitem" style="z-index: 1; top: 444px; left: 48px; display: block; width: 118px;">
我想要的是为ul标签分配和标识。我想这样做的原因如下

有一个参数,其中一个参数是ui。在“选择偶数”对话框中,此ui填充了用于创建自动完成的数据,但对于关闭事件,ui为空。这就是为什么我想在我上一个问题的ul标签上有一个id。如果我可以获得ui数据,那么我就不需要麻烦设置id,尽管我认为这是一个理想的特性

希望我是相当清楚的

编辑:显然,我不够清楚:。希望以下内容有助于澄清我的意思: 从自动完成中选择一个项目后,我将使用select事件使用ui参数填充其他表单元素。这一切都很好

然而,现在我想做的是,在自动完成中,我写出一个存在于自动完成中的项目。但是,我没有选择该项,而是选择下一个表单元素的选项卡。我想做的是检查自动完成中输入的术语,在自动完成列表中循环。如果输入的术语与列表中的一项匹配,我只需从附加的对象中获取数据,然后相应地填充表单元素

这是一个我认为符合你要求的方法。不过,我怀疑有更好的方法。我从字面上理解了问题中关于TAB的部分,并将一个事件绑定到该键

注意:我刚刚看到你对这个问题的评论,所以现在我们也来看看这个演示。因此,在我的演示中,JSON数据的格式不同,因此可能需要进行一些调整

哦,我刚找到一个可能已经做了你想要的典型的-


编辑哦,我明白了,大部分代码已经在中完成了。只需使用$parentItem.data'item.autocomplete'

用户界面数据是什么意思?你能详细说明一下你想从用户界面上得到什么吗?我想我现在明白了,谢谢。还有一个问题,自动完成的来源是什么。是AJAX搜索还是本地数组?@andyb:autocomplete的源代码是AJAXsearch@andyb:这里是我想要实现的简化版本,它与关于SO@andyb的以下问题有关:在这个示例中,我使用本地数据存储,但在我的生产代码中,我使用AJAX提取数据。我想我会澄清一下以防万一谢谢你。我会试着看看这是否是我想要的,然后告诉你。不幸的是,这不是我想要做的,尽管我非常确定我需要那种功能:。希望通过我的JSFIDLE示例,我需要的更清楚。谢谢您的输入。@DavidS在查看了您的示例代码后更新了我的答案。这正是我需要的!你是怎么知道这个的。数据语法?我问的原因是我宁愿自己学习也不愿问。很乐意帮忙!它是jQuery的一部分,请参见和,但在中也有意义。很多扩展都隐藏在这里。这是一种非常好且简单的存储DOM节点对的方法。