【问题标题】:Primefaces Autocomplete - How to display dropdown items on click of inputPrimefaces Autocomplete - 如何在点击输入时显示下拉项目
【发布时间】:2018-11-17 10:43:17
【问题描述】:

使用 PF 4/5 和 Mojarra 2.2

我有一个显示下拉列表的自动完成字段。当我单击下拉列表或开始输入输入时,将显示项目列表。我希望在输入框获得焦点时显示项目列表,以便基本上我可以删除下拉按钮图像。我不确定如何触发它。

<p:autoComplete minQueryLength="0" size="7" queryDelay="0" dropdown="true" scrollHeight="200" value="#{scheduleView.startTime}" id="startTime"  completeMethod="#{scheduleView.getTimes}" required="true" onclick="this.select()">

【问题讨论】:

  • 当你开始打字时它会起作用,但是当它获得焦点时呢?你确定要那个吗?
  • 你可能会发现这个选项也很有用——forceSelection="true"
  • 是的,当我开始打字时它确实有效。是的,我希望它显示 onfocus 或 onclick 输入字段,无需键入,因此用户可以选择键入或仅从列表中进行选择。也许这是不可能的。
  • 你也可以有一个带有自动完成功能的选择框 -- primefaces.org/showcase/ui/input/autoComplete.xhtml
  • 是的,这就是我正在使用的,但没有在输入框的焦点上显示下拉菜单。它仅在单击下拉图标时显示下拉列表。所以我不确定当输入获得焦点时如何调用“dropdown.show()”......

标签: jsf primefaces


【解决方案1】:

您可以在自动完成输入点击时触发客户端的search()功能:

<p:autoComplete
    id="startTime"
    widgetVar="foo"
    value="#{scheduleView.startTime}"
    completeMethod="#{scheduleView.getTimes}"
    required="true"
    dropdown="true"
    size="7"
    scrollHeight="200"
    minQueryLength="0"
    queryDelay="0"
    onclick="PF('foo').search(PF('foo').input.val());">

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-11
    • 2020-12-12
    相关资源
    最近更新 更多