【问题标题】:selectOneMenu default value does not work in table row editorselectOneMenu 默认值在表格行编辑器中不起作用
【发布时间】:2015-08-05 22:35:55
【问题描述】:

我在带有 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 的默认值是新闻间隔的实际值,但是当我单击编辑时,它不显示我为其设置的默认值并仅显示枚举值。

enum 的第一个值为 5,每行显示 5 作为 selectOneMenu 的默认值。

【问题讨论】:

  • 商品标签不是我的问题!再次阅读问题。
  • 请出示一个 mcve(见 How to Ask 和 jsf 信息页面)

标签: jsf primefaces selectonemenu


【解决方案1】:

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

【讨论】:

  • 你怎么知道它是一个供所有人使用的单一值?代码仅限于知道。最好先要求澄清/改进代码
猜你喜欢
  • 2015-03-07
  • 2012-11-22
  • 2017-06-02
  • 2023-03-05
  • 2014-09-03
  • 2014-03-21
  • 2012-05-20
  • 1970-01-01
  • 2012-03-16
相关资源
最近更新 更多