我正在使用可编辑的素面selectOneMenu显示一些值。如果用户从列表中选择一个项目,则应更新文本区域。但是,如果用户在selectOneMenu中键入内容,则不应更新文本区域。
我以为我可以解决ajax事件。但是,我不知道我可以在这里使用哪个事件。我只知道valueChange
事件。还有其他事件,例如onSelect
或onKeyUp
吗?
这是我的代码:
<p:selectOneMenu id="betreff" style="width: 470px !important;"
editable="true" value="#{post.aktNachricht.subject}">
<p:ajax event="valueChange" update="msgtext"
listener="#{post.subjectSelectionChanged}" />
<f:selectItems value="#{post.subjectList}" />
</p:selectOneMenu>
<p:inputTextarea style="width:550px;" rows="15" id="msgtext"
value="#{post.aktNachricht.text}" />
最佳答案
PrimeFaces Ajax事件有时记录得很少,因此在大多数情况下,您必须转到源代码并检查一下自己。p:selectOneMenu
支持更改事件:
<p:selectOneMenu ..>
<p:ajax event="change" update="msgtext"
listener="#{post.subjectSelectionChanged}" />
<!--...-->
</p:selectOneMenu>
这会触发
AjaxBehaviorEvent
作为签名中的参数的侦听器:public void subjectSelectionChanged(final AjaxBehaviorEvent event) {...}
关于ajax - selectOneMenu Ajax事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16587585/