我在JSF工作
当我打开弹出屏幕时,我的a4j ajax调用不起作用。
如果我没有弹出窗口,同样的屏幕可以工作。
这是常见的事吗?
弹出一个页面,其中......代码很少......
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib prefix="t" uri="http://myfaces.apache.org/tomahawk"%>
<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
延迟设置为
<a4j:queue requestDelay="500" ignoreDupResponses="true" />
和实际的ajax调用如
<a4j:commandLink
actionListener="#{insuranceBackingBean.viewAll}"
ajaxSingle="true"
reRender="formularyList, noRecFoundGridForFormulary, patientCurrentDemographicDetails,patientInsuranceDemographicDetails,conflictSection"
eventsQueue="onClick"
onclick="setEligibilityValues('#{insuranceBean.fromEligibility}','#{insuranceBean.payerMessage}','#{insuranceBean.pharmacyBenefitRetailCoverageStatus}','#{insuranceBean.pharmacyBenefitMailOrderCoverageStatus}','#{insuranceBean.pharmacyBenefitLTCCoverageStatus}','#{insuranceBean.pharmacyBenefitSpecialtyCoverageStatus}');setVisibleConflictGrid();"
>
<f:verbatim>View</f:verbatim>
<f:param name="insuranceID" value="#{insuranceBean.id}" />
其中setEligibilityValues
是正在调用的脚本,但未调用insuranceBackingBean.viewAll
。
有没有办法troubleshoot
这个???
答案 0 :(得分:0)
我不知道您使用哪个组件/标签作为弹出窗口,但我使用不同的组件多次遇到此问题,我知道的唯一解决方案是:您应该将弹出窗口打开为模态对话框。这意味着它应该在 iframe 中呈现。
通常,如果弹出窗口未配置为模态,而不是通常在div / span中呈现,并且由于某种原因,ajax调用无法在服务器端执行。