实际上有一个里面h:selectBooleanCheckbox
的ajaxSupport
事件<h:form id="form1">
,所以在检查,调用动作/侦听器但一旦打开模态面板并且它也包含h:selectBooleanCheckbox
(在另一个里面<h:form id="form2">
),只需关闭模态面板并尝试检查里面的复选框form1
,但是ajaxSupport
动作不是调用,请提供修复建议。
代码如下:
<body>
<h:form id="form1">
<h:selectBooleanCheckbox id="customerActiveId"
value="#{manager.customerActive}">
<a4j:support`enter code here`
action="#{bean[action]}"
event="onclick"
reRender="#{reRender}" />
</h:selectBooleanCheckbox>
<br />
<a4j:commandButton id="pnlConfigurationId"
value="project configuration"
oncomplete="$j('#pnlConfigurationMP').toggle();" />
</h:form>
<rich:modalPanel id="pnlConfigurationMP" >
<h:form id="form2" enctype="multipart/form-data">
<h:selectBooleanCheckbox id="projectConfigurableId"
value="#{manager.projectConfigurable}">
<a4j:support
action="#{bean[action]}"
event="onclick"
reRender="#{reRender}" />
</h:selectBooleanCheckbox>
<a4j:commandButton id="cancel" value="cancel" immediate="true" ajaxSingle="true"/>
<a4j:commandButton id="save" value="save" action="#{manager.savePanel()}"/>
</h:form>
</rich:modalPanel>
</body>
实际上 ajax 事件和操作是在第一次调用“customerActiveId”检查,但是一旦打开模式面板并简单地关闭/取消模式面板并尝试再次检查“customerActiveId”,所以这里不会调用 ajax 事件和操作