2

JSF 2.0 で次のコードを実行しようとしています。「ブール チェック ボックス」の値を変更するためにマネージド Bean メソッドを呼び出そうとしています。タグを使用しようとしています。しかし、マネージド Bean メソッドは呼び出されていません。

私のJSFコードは次のとおりです。

*<h:panelGrid columns="3" styleClass="prepend-2 span-20">
<h:dataTable value="#{report.resultList}" var="list">
<h:column >
<h:selectBooleanCheckbox layout="pageDirection"
value="#{list.selected}">
<f:ajax event="change"
listener="#{report.getStaffIdList}" render="@form" immediate="true" execute="@this" />
</h:selectBooleanCheckbox>
</h:column>
<h:column>
<f:facet name="header">StaffID</f:facet>
<h:outputText value="#{list.staffID}"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">Name</f:facet>
<h:outputText value="#{list.name}"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="#{report.searchQueryHeading}" />
</f:facet>
<h:outputText value="#{list.queryResult}"></h:outputText>
</h:column>
</h:dataTable>
</h:panelGrid>**

私のマネージドBean:

public void getStaffIdList(AjaxBehaviorEvent ve){
  System.out.println("inAjax");
}
4

2 に答える 2

1
  1. selectbooleancheckboxには変更イベントがありません。クリックイベントを使用します。
  2. ajaxなしでアプローチを試すこともできます。selectbooleanチェックボックスに次のコードを追加します。

    valueChangeListener = "#{bean.listener}" onchange = "submit()"

于 2012-06-07T14:08:53.030 に答える