私は<h:selectOneMenu>
コンポーネントで作業しています。disabled
属性が設定されています。このためvalueChangeListener
、コンポーネントで a を使用できません。タグを使用してみ<a4j:actionListener>
ましたが、親タグのタイプが ではないというエラーが表示されますActionSource
。選択した値が変更されたときにアクションをトリガーする他の方法はありますか?
タグは次のとおりです。
<table>
<tr>
<td><input type="radio" id="auto" name="name" value="auto" onclick="onclickfunction (this);"> </input>
</td>
<td>
<h:selectOneMenu id="abc" value="#{bean.val}" disabled="true">
<f:selectItem itemLabel="Select ..." itemValue=""/>
<f:selectItems id="list" value="#{bean.list}"/>
<a4j:ajax event="change" execute="@this" limitRender="true"
listener="#{bean.listener}" render="other" />
</h:selectOneMenu>
</td>
</tr>
<tr>
<td><input type="radio" id="manual" name="name" value="manual" onclick="onclickfunction (this);"> </input>
</td>
<td>
<h:selectOneMenu id="xyz" value="#{bean.val}" disabled="true">
<f:selectItem itemLabel="Select ..." itemValue=""/>
<f:selectItems id="list" value="#{bean.list}"/>
<a4j:ajax event="change" execute="@this" limitRender="true"
listener="#{bean.listener}" render="other" />
</h:selectOneMenu>
</td>
</tr>
</table>
このタグは、disabled が true に設定された状態で始まります。無効な属性は、javascript を介して変更されます。私が行った設計上の選択により、javascript を介してこれを行う必要がありました。この選択タグは、ユーザーがラジオ ボタンを使用して切り替えることができる 2 つのタグの 1 つです。f:selectitem 子タグが必要なため、JSF radiobutton タグを使用できませんでした。2 つの選択タグを切り替えるためのラジオ ボタンが必要です。