1

私のフォームには、ui:repeat コンポーネント内にドロップダウン リストが含まれています。リスト項目が選択されると、 f:ajax 呼び出しにより、ドロップダウン リストと ui:repeat 内の他のいくつかのコンポーネントの両方が更新されます。f:ajax render="???????" の正しい id 形式を見つけるのに苦労しています。(以下の facelet ビューを参照してください)。どんな助けでも大歓迎です。

レンダリングされた画面の生のソース ビュー (実際の JSF ID) と、コード化されたものと同じコンポーネントを示す facelet ビューを提供しました。

ブラウザ ソース ビュー

<form id="GeneralMedicalHistory" name="GeneralMedicalHistory" method="post" action="..." 

<span id="GeneralMedicalHistory:GeneralMedicalHistory_P"> 

<span id="GeneralMedicalHistory:medhist">

   <table border="0" class="table_form">

   <select id="GeneralMedicalHistory:RPTK:0:MedicalCondition" name="GeneralMedicalHistory:RPTK:0:MedicalCondition" >  ---> TARGET ID  (UI:REPEAT)

Facelet ビュー

<h:form id ="GeneralMedicalHistory">
<h:panelGroup id="GeneralMedicalHistory_P">
<h:panelGroup id="medhist">
<ui:repeat value="#{f.repeatingItemGroups['MedicalHistory'][1]}" var="repeatKey" id="RPTK" >      
<h:commandLink action="remove_repeating_ig" rendered="${f.items[removeOid].isNew and repeatKey != '1'}"></>
<table border="0" class="table_form"> 
 <h:selectOneMenu value="${f.items[oid].value}" id="MedicalCondition" >  
   <f:selectItems value="${f.items[oid].codeListItems}"/>
   <f:ajax render="?????????" event="click" listener="#{f.clearModelValuesViaAjax}"  /> 
 </h:selectOneMenu>
</table>
</h:panelGroup>     
</h:panelGroup>      
</h:form>

私は次のことを試しましたが、どれもうまくいきませんでした...

  1. f:ajax render="GeneralMedicalHistory:RPTK:0:MedicalCondition"
  2. f:ajax render=":GeneralMedicalHistory:RPTK:0:MedicalCondition"
  3. f:ajax render="GeneralMedicalHistory_P:medhist:RPTK:0:MedicalCondition"
  4. f:ajax render=":GeneralMedicalHistory_P:medhist:RPTK:0:MedicalCondition"
  5. f:ajax render="GeneralMedicalHistory:GeneralMedicalHistory_P:medhist:RPTK:0:MedicalCondition"
  6. f:ajax render=":GeneralMedicalHistory:GeneralMedicalHistory_P:medhist:RPTK:0:MedicalCondition"
4

1 に答える 1