0
Iam尝试使用primefaces更新基于面板的选定数据selectonemenu和ajax监听器已通过更新面板进行了处理。但我的面板没有更新,所选项目显示在控制台window.That意味着,在得到了AJAX调用到bean.but它没有更新的面孔页面管理,并提到我的代码ajax监听器未更新用于所选项目的面板
<p:panelGrid columns="1" style="align:center;width:80%" styleClass="companyHeaderGrid">
<p:row>
<p:column><h:outputLabel for="runobject" value="Run Object: " /></p:column>
<p:column>
<p:selectOneMenu id="selectedState" value="#{TAScheduleBean.selectedRunObjectItem}" >
<p:ajax listener="#{TAScheduleBean.changePanelState}" render="@this" update=":form:displayDailyPanel"/>
<f:selectItem itemLabel="Select One" itemValue="Select One" />
<f:selectItems value="#{TAScheduleBean.runObjectsValue}" />
</p:selectOneMenu>
</p:column>
</p:row>
<p:row id="displayDailyPanel" rendered="#{TAScheduleBean.appSelectedRunObject eq 'Daily'}">
<p:column>
<p:outputLabel value=" N days" />
<p:outputLabel value="Days=" /><p:inputText id="s"/>
</p:column>
</p:panelGrid>
我读同一论坛的相关问题和其他论坛也。但问题没有resolved.How我可以解决this.Please帮我
更新: -
ManagedBean
public class TAScheduleBean extends TASBean {
private String selectedRunObjectItem="";
private String appSelectedRunObject="";
TAScheduleBean(){
}
public void changePanelState(){
String methodName="changePanelState";
setPanelIsVisible(true);
TALogger.log(Logger.INFO, className,
methodName, "---------"+getSelectedRunObjectItem());
setAppSelectedRunObject(getSelectedRunObjectItem().trim());
}
}
首先请发布您的Managed bean代码。 – Makky
检查受管bean代码 – tech2504
我看不到runObjectsValue方法。请始终发布完整的代码。 – Makky