Primefaces自动完成时触发itemSelect事件

Primefaces自动完成时触发itemSelect事件,primefaces,autocomplete,Primefaces,Autocomplete,我有一个primefaces自动完成元素,除了一件事情外,它工作得很好。问题是,当我输入一个有效文本(可映射到后面的数据),但我没有从命题中选择元素,也没有按tab键或enter键时,什么都不会发生 因此,我输入一个值并单击另一个字段,该元素未被选中,验证失败。但是,我不希望用户强制显式选择项目 我的想法是,在输入元素中放置一个onchange侦听器,并在其中触发primefaces itemSelect事件。但如果可能的话,我不知道怎么做 或者可能还有其他解决方案? 提前谢谢 我找到了一种方法

我有一个primefaces自动完成元素,除了一件事情外,它工作得很好。问题是,当我输入一个有效文本(可映射到后面的数据),但我没有从命题中选择元素,也没有按tab键或enter键时,什么都不会发生

因此,我输入一个值并单击另一个字段,该元素未被选中,验证失败。但是,我不希望用户强制显式选择项目

我的想法是,在输入元素中放置一个onchange侦听器,并在其中触发primefaces itemSelect事件。但如果可能的话,我不知道怎么做

或者可能还有其他解决方案?
提前谢谢

我找到了一种方法,尽管它可能不是最美丽、最简单的方法。 也许这对某人有帮助

这是primefaces(5.3)的特定解决方案,但它也适用于其他版本

$('#form\\:txtAutoComplete_input').val('Foo');
$('#form\\:txtAutoComplete_input').trigger('keydown');
$('#form\\:txtAutoComplete_input').trigger('input');
$('#form\\:txtAutoComplete_panel .ui-autocomplete-item').trigger('click');
出于某种原因,在将值输入到输入字段后,您必须按该顺序触发keydown和输入事件。在这些事件之后,自动完成列表将显示匹配的值。在这里,您必须触发对某个元素的单击,以便正确执行所有支持bean的内容