2013-05-17 2 views
-1

관리자 및 사용자와 같은 역할 목록이 있습니다.이 목록은 드롭 다운 상자의 옵션으로 표시해야합니다. 현재 다음 코드를 사용하여 표시 할 수 있지만 이름에 인덱스를 갖는 방법을 모르겠습니다.드롭 다운 상자에 목록을 채우는 방법

현재 옵션 이름과 색인은 동일합니다.

Index Name 

    Manager Manager 

    User User 

하지만

내 목록

Index Name 

    1  Manager 

    2  User 

해야

public interface Options{ 
     public static final String[] POSITION = {"Manager", "User"}; 
     .... 

목록 드롭 다운의 소스로 목록을 사용하려면 코드

<s:select name="Position" label="Positions" list="@[email protected]"/> 

답변

0

당신은 String[]보다는 List<Object>를 사용하거나 수도 Map<Integer, String> :

public static final Map<Integer, String> POSITIONS = new HashMap<Integer, String>() { 
    { 
     put(1, "User"); 
     put(2, "Manager"); 
    } 
}; 

그리고 바로 .jsp로 :

<s:select name="Position" label="Positions" list="@[email protected]" /> 

당신이 EntryKey에 넣어 무엇에 ListKey로 이동 s:select이고 Value에 넣은 내용은 listValue입니다.

<s:select> 두 개의 다른 컬렉션을 가지고 있으며 어느 것이 모두 ListKeyListValue 속성으로 지정되는지 지정할 수 있습니다.

+0

답변을 사용했으나 put 메서드에 ..... 잘못된 메서드 선언이 표시되어 반환 유형이 필요합니다. 제 인터페이스에는이 코드가 있습니다. – J888

+0

그러면 두 번째 선택을 할 수 있습니다 : 두 개의 다른 배열을 가지게됩니다 : 하나의'String []'을'select'의'ListValue'에 넣고'ListKey'를위한 하나의'Integer []'를 넣으십시오. 분명히, 당신은 올바른 순서로 그들을 채울 필요가 있습니다. – Armaggedon

관련 문제