selectOneMenu默认值在表行编辑器

时间:2015-05-24 08:29:21

标签: jsf primefaces selectonemenu

我在带有roweditor的表的p:cellEditor标记中有一个p:selectOneMenu标记。 这是它的代码:

 <p:column headerText="Update Interval">
           <p:cellEditor>
                <f:facet name="output"><h:outputText value="#{news.intervalLabel}"/></f:facet>
                <f:facet name="input">
                     <p:selectOneMenu value="#{newsManagementBean.intervals}" valueChangeListener="#{newsManagementBean.changedIntervals}" style="width: 200px;">
                                    <f:selectItems value="#{newsManagementBean.updateIntervals}" var="interval" itemLabel="#{interval.value}"
                                                   itemValue="#{interval.key}"/>
                     </p:selectOneMenu>
                </f:facet>
          </p:cellEditor>
 </p:column>

变量interval是菜单项的枚举,news是表中定义的变量。我想在单击编辑按钮进行编辑行时,selectOneMenu的默认值是新闻间隔的实际值,但是当我单击编辑时,它不会显示我为其设置的默认值并仅显示枚举值。

枚举的第一个值是5,并且每行显示5作为selectOneMenu的默认值。

1 个答案:

答案 0 :(得分:1)

因为你有一个表,这意味着你有不同的对象,每个对象都有自己的intervals所以最好不要对所有对象使用单个值#{newsManagementBean.intervals}。尝试将intervals定义为您的对象的属性并以此方式使用它。我的意思是news.intervals