有一种情况是我们平时程序开发中经常遇到的,根据一个checkbox的值,动态的显示隐藏一个区域,
在使用Seam和Richfaces开发的时候,一个简单的a4j:support 和 reRender 并不能解决问题。试验了一番,解决了这个问题,例子代码:
1 <h:selectBooleanCheckbox value="#{beanA.propertyA}"
2 styleClass="check" onclick="showHideHistorySelector()" id="adminView"/>
3 <s:div id="historySelectorRegion">
4 <h:panelGrid columns="3" rendered="#{beanA.propertyA}">
5 //Content here
6 </h:panelGrid>
7 </s:div>
8 <a4j:jsFunction name="showHideHistorySelector" status="waitingMask"
9 reRender="historySelectorRegion" ajaxSingle="true"
10 process="adminView" action="#"/>
通过使用a4j:jsFunction的process属性来控制就可以解决问题。