我使用带有jsf的primefaces,我想至少需要两个字段中的一个。这意味着如果这两个字段是空的,则会显示错误消息: 这是我的代码示例:
<h:outputLabel for="srcNumber" value="Originator MSISDN (EXAMPLE 32495959595)" />
<p:inputText id="srcNumber" value="#{cdrMmscRecBean.srcNumber}" label="srcNumber" />
<h:outputLabel for="destNumber" value="Destination MSISDN (EXAMPLE 32495959595)" />
<p:inputText id="destNumber" value="#{cdrMmscRecBean.destNumber} label="destNumber" />
谢谢:)
答案 0 :(得分:3)
您可以这样实现:
<p:inputText id="srcNumber" value="#{cdrMmscRecBean.srcNumber}" label="srcNumber"
required="#{empty cdrMmscRecBean.destNumber}" requiredMessage="SRC Number Required">
<p:ajax event="change" update="destNumber" />
</p:inputText>
<p:inputText id="destNumber" value="#{cdrMmscRecBean.destNumber}" label="destNumber"
required="#{empty cdrMmscRecBean.srcNumber}" requiredMessage="DEST Number Required">
<p:ajax event="change" update="srcNumber" />
</p:inputText>
有关如何参数化验证消息的更多参考:
答案 1 :(得分:0)
如果要显示验证错误,请使用<p:message for="srcNumber" />
并且对于测试编号,删除outputLabels,这将显示验证警告。
您还需要在inputTexts中添加required =“true”标志。
这是最重要的
修改强> Purpose of the h:outputLabel and its "for" attribute这里显示outputLabel使用非主要面来显示validatoin消息,如果这是你的全部问题那么你只需要在输入文本上添加required =“true”验证标志指示符