Как отобразить другое значение в стойках 2 выберите - PullRequest
0 голосов
/ 21 мая 2010

Я хочу знать, как отобразить другое значение в стойках 2 выберите. Например: я хочу поставить январь, февраль как месяц, где значение должно пройти 1,2 соответственно.

если кто-нибудь знает об этом, пожалуйста, дайте мне знать спасибо.

1 Ответ

3 голосов
/ 21 мая 2010

См. Следующий пример (из документа API Struts 2.1.8):

<s:select label="Months"
        name="months"
        headerKey="-1" headerValue="Select Month"
        list="#{'01':'Jan', '02':'Feb', [...]}"
        value="selectedMonth"
        required="true"
 />

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

Конечно, месяцы статичны, но вы можете использовать список объектов домена или любые другие компоненты, которые вам нужны. В этом случае список должен храниться, как правило, как поле вашего класса действий. Тогда вы будете ссылаться на список или карту:

 <s:select label="User"
        name="users"
        headerKey="-1" headerValue="Select User"
        list="users"
        value="selectedUser"
        required="true"
 />

В этом случае ваше действие будет содержать карту с именами пользователей и их идентификаторами и получателем для нее: getUsers().

Если метод getUsers () вашего действия возвращает список объектов User, а класс User имеет по крайней мере (предположим) поля id и username, вам необходимо указать, какое поле использовать передаваемое значение и какое поле использовать для отображения при выборе. Это делается с помощью атрибутов listKey и listValue тега select:

 <s:select label="User"
        name="users"
        headerKey="-1" headerValue="Select User"
        list="users"
        listKey="id"
        listValue="username"
        value="selectedUser"
        required="true"
 />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...