2013-09-04 13 views
5

私の要件は次のとおりです。私はいくつかの値(例:エンジニアリング、医学、法律など)を持つs​​electMenuを持っています。ドロップダウンでエンジニアリングを選択すると、エンジニアリング(例:エレクトロニクス、コンピュータ、Electricalsなど)に関連する値を持つ別のドロップダウンメニューが動的に作成されます。 JSF 2.0でこれをどのように達成できますか?JSFの動的ドロップダウンコンポーネントの追加

+0

これらのコンポーネントのほとんどを取得するにはどのように多くのヒントのための私達の '[selectonemenu]' wikiページをチェックしてくださいstackoverflow.com/tags/selectonemenu/info(黒いボックスが表示されてから* info *のリンクをクリックするまで、あなたの質問の下に置かれた '[selectonemenu]'タグをホバリングするとアクセスできます)。 – BalusC

答えて

6

最初にh:selectOneMenuの選択が変更されたときに、ajaxリクエストを実行する必要があります。この要求は、2番目のh:selectOneMenuの選択可能な項目を更新します。 ajaxリクエストの後に、更新された値で2番目の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> 

管理Beanます。http://

public void changeSubject(){ 
    //Loads the specialities depending on the selected subject 
    subjectSpecialities = loadSpecialitiesForSubject(selectedSubject); 
} 
関連する問題