noSelectionLabel в jsf? - PullRequest
       9

noSelectionLabel в jsf?

1 голос
/ 20 июля 2011

Есть много ситуаций, когда мы хотим сказать пользователю выбрать опцию из компонента selectOneMenu.В Seam это легко решается с помощью noSelectionLabel.

<h:selectOneMenu value="#{seasonHome.id}">
        <s:selectItems value="#{seasonListQuery.resultList}"
                       var="season"
                       label="xxxSeason #{season.startYear}"
                       noSelectionLabel="Select Season"
                       hideNoSelectionLabel="true" />
        <s:convertEntity /> 
</h:selectOneMenu>

Подскажите, пожалуйста, есть ли что-то подобное в JSF 1.2?

Я использую Icefaces со списком для selectItemsкак:

<ice:selectOneMenu
            id="#{id}"
            required="#{required}"
            styleClass="#{styleClass} #{not required ? 'graNotRequired':''}"
            style="width: #{width};font-size: #{fontSize};"
            partialSubmit="#{partialSubmit}"
            disabled="#{disabled}"
            value="#{fieldOneDataHolder[fieldTwo]}">
            <f:selectItems value="#{selectableItems}" />
            <f:validator validatorId="#{validatorId}" />
        </ice:selectOneMenu>

(пожалуйста, игнорируйте параметры, это пользовательский компонент, который я сделал).

Я могу ввести новый <f:selectItem itemLabel="Please select" itemValue=""/> выше f:selectItems, но это сложно (у меня естьчтобы найти способ скрыть это в некоторых случаях и т. д.) ...

Знаете ли вы другие обходные пути?

Спасибо.

1 Ответ

0 голосов
/ 20 июля 2011
<f:selectItem itemLabel="Please select" itemValue="" itemDisabled="true" rendered="#{isShown}" />

itemDisabled сделает его показанным, но не выбираемым.

Логическое значение в rendered будет определять, будет ли отображаться элемент или нет.

...