我使用rich:menuItem来显示rich:modalpanel。rich:menuItem代码如下:
<rich:menuItem>
<a4j:commandLink
value="Add Machine"
oncomplete="#{rich:component('addMachinePanel')}.show()"
reRender="addMachinePanel">
</a4j:commandLink>
</rich:menuItem>
和rich:modalpanel代码
<rich:modalPanel id="addMachinePanel">
<a4j:form>
<a4j:commandButton value="Cancel"
action="#{adminBean.cleanupMachineToEdit}"
onclick="#{rich:component('addMachinePanel')}.hide(); return false;" />
</a4j:form>
</rich:modalPanel>
使用上面的代码,rich:modalpanel会出现一到两秒钟,然后再次消失。请帮我找出问题所在。
谢谢
默认情况下,rich:menuItem
的submitMode
属性为server
,它将提交表单并完全刷新页面。
您可以将submitMode
更改为ajax
以执行ajax表单提交。只有使用reRender
属性指定的元素才会刷新,而不是刷新整个页面。
或者,您可以将其更改为none
(对于richfaces 3.X)或client
(对于richface 4.0),这样就没有表单提交。
<rich:menuItem submitMode="ajax">
<a4j:commandLink
value="Add Machine"
oncomplete="#{rich:component('addMachinePanel')}.show()"
reRender="addMachinePanel">
</a4j:commandLink>
</rich:menuItem>