我有一堆JSF表单中的输入字段以及相关的标签和验证器。
在某些字段上,验证失败会将标签变为红色,而不是。
知道原因可能是什么,或者如何调试?
我通过单击标签并观察焦点是否转到相应的输入字段来验证是否正确设置了标签/输入关系。
我们使用JSF-2.0和Primefaces 5
这个变成红色:
<p:column style="width:10em;">
<f:facet name="header">
<span
title="#{messages['tooltip.model.modelSearch.modelKeyPattern']}">
<p:outputPanel>
<p:outputLabel
id="modelKeyPatternLabel"
for="modelKeyPattern"
styleClass="control-label"
value="#{messages['label.model.modelSearch.modelKey']}" />
<p:inputText
id="modelKeyPattern"
value="#{modelSearchBean.modelKeyPattern}"
validatorMessage="#{messages['error.model.modelSearch.modelKey']}"
size="6"
styleClass="searchField">
<f:validateLength maximum="6" />
</p:inputText>
</p:outputPanel>
</span>
</f:facet>
这个没有:
<p:column style="width:6em;">
<f:facet name="header">
<span
title="#{messages['tooltip.model.modelSearch.modelYear']}">
<p:outputPanel>
<h:outputLabel
id="modelYearLabel"
for="modelYear"
styleClass="control-label"
value="#{messages['label.model.modelSearch.table.column.modelYear']}" />
<p:inputText
id="modelYear"
value="#{modelSearchBean.modelYear}"
validator="#{modelYeaValidator.validate}"
styleClass="searchField"
size="4">
</p:inputText>
</p:outputPanel>
</span>
</f:facet>
<h:outputText value="#{model.modelYear}" />
</p:column>
答案 0 :(得分:0)
找到它。红色标签是h:outputLabel
,而另一个是p:outputLabel
。请注意p:
和h: