如何打开焦点上的 p:autoComplete 建议列表

问题描述 投票:0回答:1

我有一个使用下拉按钮的

AutoComplete
组件。我不喜欢仅在单击下拉按钮(或开始输入)时才显示建议。我想展示有关输入组件焦点的建议。所以我尝试了这个,但它不起作用:

<p:autoComplete widgetVar="myAutoComplete"
                dropdown="true"
                onfocus="PF('myAutoComplete').dropdown.trigger('mouseup')"
                ...>

在组件侦听器中,它会触发输入焦点,因此会导致循环:

https://github.com/primefaces/primefaces/blob/f693d1df18192c2bf2c6f715d55e3934ae255c06/primefaces/src/main/resources/META-INF/resources/primefaces/autocomplete/autocomplete.js#L374-L378

this.dropdown.on("mouseup", function() {
    if ($this.active) {
        $this.searchWithDropdown();
        $this.input.trigger('focus');
    }
}

我找不到其他方法来做到这一点。有没有办法在不给组件打补丁的情况下做到这一点?

我使用的是 PrimeFaces 12。

javascript jquery jsf primefaces
1个回答
1
投票

只需更改代码以使用

searchWithDropdown
即可避免发生这些事件

<p:autoComplete widgetVar="myAutoComplete"
                dropdown="true"
                onfocus="PF('myAutoComplete').searchWithDropdown()"
                ...>
© www.soinside.com 2019 - 2024. All rights reserved.