p:ajaxを使用してh:selectOneMenuの値を変更しようとしています。 しかし、私はいつもnull値を得ています、何が間違っているか分からないコードは以下のとおりです。h:selectOneMenu p:ajaxでイベントを変更する
<h:form>
<h:selectOneMenu id="selectMenu" value="#{userHomeController.gymsSelectType}">
<f:selectItem itemLabel="Close to me" itemValue="closest" />
<f:selectItem itemLabel="Visited by me" itemValue="visited" />
<p:ajax process="selectMenu" listener="#{userHomeController.selectMenuListener}" event="change" update=":home-form:panel" />
</h:selectOneMenu>
</h:form>
およびBeanクラスは、これがviewscopedクラスである
public void selectMenuListener() {
System.out.println("-------- >> " + gymsSelectType); // here null coming
if (gymsSelectType.equals("a")) {
//
} else {
//
}
}
あります。 変数gymsSelectType用セッターの下にもヌル
public void setGymsSelectType(String gymsSelectType) {
System.out.println("------------ >> "+gymsSelectType);
this.gymsSelectType = gymsSelectType;
}
はあなたにいくつかのロジックまたはだけの問題を実行します試してみてくださいを持って印刷していますデータやパネルの表示/非表示は?最後のものはJavaScriptのみを使用して達成できるからです。 –
は選択に基づいていくつかのロジックを行う必要があります – Eric
'
'を使用することはできますが、ここでのデフォルトのajaxイベントであるすべての値選択で呼び出されます。あなたがそれでも「ヌル」を得るなら、問題はどこか他のところです。あなたのfaceletに '