[英]validate input each time the user add or remove character datatable primefaces
我在我的数据表中有这个列,我希望每次用户在我测试的输入中添加或删除一个字符时验证它:
<p:column headerText="Quantité" style="width:20%">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{arti.qte}" />
</f:facet>
<f:facet name="input">
<h:panelGroup>
<p:inputText
value="#{arti.qte}" >
<p:ajax event="keyup" listener= "#{mvmtdepotMB.keyupQte}" />
<f:validateDoubleRange minimum="0.1" maximum="#{arti.qtemax}" />
</p:inputText>
<p:message for="qdf" />
</h:panelGroup>
</f:facet>
</p:cellEditor>
</p:column>
但是没有调用keyup方法,验证也没有
我怎么能实现这一点
你应该检测p:inputText
的keyup事件:
<p:inputText value="#{arti.qte}" onkeyup="validate()"/>
这将执行p:remoteCommand
:
<p:remoteCommand name="validate" actionListener="#{mvmtdepotMB.keyupQte}"/>
将p:remoteCommand
放在p:dataTable
。
如果要将参数传递给p:remoteCommand
:
onkeyup="validate([{name: 'name1', value: 'value1'}, {name: 'name2', value: 'value2'}]);"
并且p:remoteCommand
actionListener可以通过以下方式检索这些:
FacesContext context = FacesContext.getCurrentInstance();
Map map = context.getExternalContext().getRequestParameterMap();
String name1 = (String) map.get("name1");
String name2 = (String) map.get("name2");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.