0

以下のselectOneMenuでリスナーが呼び出されないという問題があります

<h:selectOneMenu id="Country" value="#{bean.country}">
   <f:ajax render="inputId" listener="#{backingBean.clearMethod}" />
     <f:selectItem itemLabel="-Select One-" itemValue="_" noSelectionOption="true"/>
     <f:selectItems value="#{optionValues['countryList']}" />
</h:selectOneMenu>
<h:inputText id="inputId" value="#{bean.city}"/>

optionValues リゾルバは、xml ファイルから国リスト オプションを解決するために使用されます。アメリカ、カナダ、メキシコがあります。私の問題は、オプションを USA から Canada に変更するか、Select One を USA に変更すると、clearMethodが呼び出されることです。しかし、オプションを USA から Select One に変更すると、clearMethod呼び出されません。

どんな助けでも大歓迎です。

4

1 に答える 1

1

itemValue問題は の属性だと思いますnoSelectionOption。おそらく検証エラーが発生するため、リスナーは呼び出されません。

itemValue属性を削除してみてください。

(ところで: あなたのコードでは、 のvalue属性はselectOneMenuバッキング Bean フィールドにバインドされていません。それともタイプミスですか?)

于 2012-04-19T06:34:10.863 に答える