2013-09-04 4 views
5

내 요구 사항은 다음과 같습니다. 일부 값 (예 : 공학, 의학, 법률 등 ..) selectMenu 있습니다. 드롭 다운에서 엔지니어링을 선택하면 Engineering (예 : 전자, 컴퓨터, Electricals 등)과 관련된 값이있는 다른 드롭 다운 메뉴가 동적으로 생성되기를 원합니다. JSF 2.0에서 이것을 어떻게 달성 할 수 있습니까?JSF의 동적 드롭 다운 구성 요소 추가

+0

어떻게 이러한 구성 요소의 대부분을 얻기 위해 더 많은 힌트에 대한 우리의'[selectonemenu]'위키 페이지를 확인하십시오 : HTTP : // stackoverflow.com/tags/selectonemenu/info (블랙 박스가 나타날 때까지 질문 아래에 놓인'[selectonemenu]'태그를 가져 와서 * info * 링크를 클릭하면됩니다). – BalusC

답변

6

첫 번째 h:selectOneMenu의 선택이 변경되면 ajax 요청을 수행해야합니다. 이 요청은 두 번째 h:selectOneMenu에있는 선택 가능한 항목을 업데이트합니다. Ajax 요청 후 업데이트 된 값으로 두 번째 h:selectOneMenu을 다시 렌더링해야합니다.

페이지 :

<h:selectOneMenu value="#{bean.selectedSubject}"> 
    <f:ajax listener="#{bean.changeSubject}" render="speciality_selection" /> 
    <f:selectItems value="#{bean.subject}" /> 
</h:selectOneMenu> 

<h:selectOneMenu id="speciality_selection" value="#{bean.selectedSpeciality}"> 
    <f:selectItems value="#{bean.subjectSpecialities}" /> 
</h:selectOneMenu> 

관리 콩 :

public void changeSubject(){ 
    //Loads the specialities depending on the selected subject 
    subjectSpecialities = loadSpecialitiesForSubject(selectedSubject); 
}