Jquery UI自动完成id和关闭事件UI参数

jquery ui autocomplete id and close event ui parameter

本文关键字:UI 参数 事件 Jquery id      更新时间:2023-09-26

我使用jQuery Ui自动完成1.8.14,我想做两件事:

为自动完成分配一个id。例如,我可能在页面上有许多自动完成,我需要一种方法来识别它们。特别地,在后台自动补全会生成像

这样的东西
<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;">

我想要的是分配和id到ul标签。我想这样做的原因是以下原因& help;

存在一个闭合事件,其中一个参数为ui。在"选择"中,即使这个ui填充了用于创建自动完成的数据,但对于关闭事件,ui是空的。这就是为什么我想在我之前的问题中对ul标签有一个id。如果我能得到ui数据,那么我不需要设置id,尽管我认为这是一个理想的功能。

希望我讲得够清楚。

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

然而,现在我想做的是,假设在自动补全中,我写了一个存在于自动补全中的项。但是,我没有选择项目,而是选择下一个表单元素。我想要做的是检查自动补全列表中输入的词,循环遍历自动补全列表。如果输入的词与列表中的一项匹配,我只需从"附加的对象"中获取数据,然后相应地填充表单元素。

这是一个演示,我认为这是你想要的。我怀疑还有更好的方法。我从字面上取了关于TAB的问题部分,并将事件绑定到该键。

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

哦,我刚刚发现了一个现有的扩展,可能已经做了你想要的(从这里)典型!: -)

Edit哦,我明白了,大部分代码已经在您的小提琴中完成了。你只需要使用$parentItem.data('item.autocomplete'); .