简体   繁体   English

如何至少使用JSF / Primefaces从两个字段中选出一个

[英]How to make one field from two required at least with JSF/Primefaces

I'm using primefaces with jsf and i want to make one of two fields required at least. 我在jsf中使用primefaces,我希望至少使两个字段之一成为必需。 that means that the error message will be displayed if this two fields are empties togheter: this is a sample of my code: 这意味着如果这两个字段为空,则将显示错误消息:这是我的代码的示例:

<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" />

thanks :) 谢谢 :)

You can implement it this way: 您可以通过以下方式实现它:

<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>

For more reference on how to parametrize your validation message: 有关如何参数化验证消息的更多参考:

If you want to show the validation error use <p:message for="srcNumber" /> and same for test number, get rid of your outputLabels, this will show the validations warnings. 如果要显示验证错误,请使用<p:message for="srcNumber" />和相同的测试编号,删除输出标签,这将显示验证警告。

You neeed to add the required="true" flag to your inputTexts as well. 您还需要将required =“ true”标志也添加到您的inputTexts中。

This is primefaces 这是素颜

EDIT Purpose of the h:outputLabel and its "for" attribute this here shows the outputLabel for using non primefaces to show validatoin messages if this is all your problem was then u just need to add the required="true" validation flag indicators on your input texts 编辑 h:outputLabel及其“ for”属性的目的,这里显示的是outputLabel,如果这是您所有的问题,则使用非质数来显示validatoin消息,那么您只需要在您的服务器上添加required =“ true”验证标志指示符即可输入文字

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM