2015-05-24 1 views
0

У меня есть тег p: selectOneMenu в теге p: cellEditor таблицы с roweditor. здесь это код:Значение selectonemenu defualt не работает в редакторе строк таблицы

<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> 

переменный интервал является перечислением для пунктов меню, а также новости переменной определена в таблице. Я хочу, когда я нажму кнопку редактирования для редактирования строки, значение по умолчанию selectOneMenu будет действительным значением интервала новостей, но когда я нажму кнопку «Изменить», он не отобразит значение по умолчанию, которое я установил для него, и покажу только значения перечисления.

Первое значение перечисления равно 5, и оно показывает 5 для каждой строки в качестве значения по умолчанию для selectOneMenu.

+0

товар этикетка не является моей проблемой! снова прочитайте вопрос. – zsh

+0

Пожалуйста, покажите mcve (см. Страницу [ask] и jsf info) – Kukeltje

ответ

1

потому что у вас есть таблица, это означает, что у вас разные объекты, у каждого есть свои intervals, поэтому лучше не использовать ни одно значение #{newsManagementBean.intervals} для всех них. попробуйте определить intervals как свойство объекта и использовать его таким образом. Я имею в виду news.intervals

+0

Как вы знаете, что это единственное значение, используемое для всех? Код ограничен, чтобы знать. Лучше попросить уточнить/улучшить код в первую очередь – Kukeltje

Смежные вопросы