我有一个带有相关验证器的输入文本,因此只允许包含整数。"-1"(表示无穷大)。如果我有-1,我可以将它映射到(用户友好的)文本
<h:outputText value="#{object.quantity == '-1' ? 'infinity' : object.quantity}"/>
输入字段看起来像这样:
<p:inputText id="quantityInput" value="#{object.quantity}" />
问题:如果用户输入"-1",我如何显示"infinity"?
泰
我想你可以这样解决你的问题:
<h:outputText id="something" value="#{object.quantity == '-1' ? 'infinity' : object.quantity}"/>
<p:inputText id="quantityInput" value="#{object.quantity}" >
<f:ajax event="blur" update="something" />
</p:inputText>
为您的h:outputText
定义一个ID,并使用Ajax函数更新您的h:outputText
。
你可以在Primefaces Showcase - Ajax Framework Events中看到更多内容
PS: blur
是一个Ajax事件,你可以改变到其他如果你想!