在primefaces中将inputtext限制为Y或N
我想把inputText中的输入限制为Y或N。下面是我的想法。这是正确的方法还是可能有更好的方法在primefaces中将inputtext限制为Y或N,primefaces,Primefaces,我想把inputText中的输入限制为Y或N。下面是我的想法。这是正确的方法还是可能有更好的方法 <p:inputText value="#{myBean.field}" id="myID" title="Enter Y or N" onkeypress ="if(!(event.keyCode == 89 || event.keyCode == 78)) event.keyCode=null;" /> <p:tooltip for="myID" showEvent=
<p:inputText value="#{myBean.field}" id="myID" title="Enter Y or N"
onkeypress ="if(!(event.keyCode == 89 || event.keyCode == 78)) event.keyCode=null;" />
<p:tooltip for="myID" showEvent="focus" hideEvent="blur" />
validateRegex可以使用,但我想在用户输入值时限制输入,而不是在提交时限制输入。您也可以使用validator作为用户输入,方法如下:
<p:inputText id="idfield" value="#{myBean.field}"
validatorMessage="Only Y or N">
<f:validateRegex pattern="[Y N]*" />
<p:ajax update="msg" event="keyup" />
</p:inputText>
<p:message for="idfield" id="msg" display="icon" />
我想你会那样解决你的问题的。
(您可能必须将[Y N]*更改为[Y N],因为我对此不确定*)
然而,在我的应用程序中,无论是Y还是N,我都会使用:
<p:selectOneRadio id="sor"
value="#{myBean.value}">
<f:selectItem itemLabel="Y" itemValue="Y" />
<f:selectItem itemLabel="N" itemValue="N" />
</p:selectOneRadio>
数据库上也有char(1)。非常好。切换到SelectOne菜单是否合理?然后,您可以向他们显示Y或N,他们不能选择任何其他内容。或者选择OneRadio、selectOneButton、selectBooleanCheckbox、selectOneListbox。@Cagatay Civici、selectBooleanCheckbox要求将true或false作为值,而我希望将Y或N作为值。我的数据库列是char(1),包含Y或N。我将使用selectOneRadio。谢谢@Maco