我使用 primefaces FieldSet 组件并在字段集中指定了一个按钮字段。我有一个要求,在哪里,当我单击命令按钮时,应该显示 ah:selectonemenu & inputtext 并且在进一步单击时,应该隐藏 h:selectOnemenu &inputtext。下面是我为显示和隐藏而编写的代码。显示部分工作正常。但是当我尝试点击按钮隐藏时,它不起作用。
xhtml代码
<h:panelGrid id="grid1" columns="3">
<p:fieldset id="GlobalAdjustment" legend="GlobalAdjustment" style="font-size:12px !important;width:30%" >
<h:commandButton id="globalAdjustID" image="#{review.imageUrl}" actionListener="#{review.showUpdateList}" />
</p:fieldset>
<h:selectOneMenu id="SelectID" value="#{review.reviewList}" rendered="#{demandReview.selectoneRenderer}">
<f:selectItems id="FilterSelectListID" value="#{review.reviewListIDs}" style="font-size:12px !important"></f:selectItems>
</h:selectOneMenu>
<h:inputText id="fieldUpdateID" required="false" rendered="#{review.inputTextRenderer}"></h:inputText>
</h:panelGrid>
ManagedBean ActionListener 方法
public void showUpdateList(ActionEvent event)
{
System.out.println("entering the Action Method:");
Map<String, Object> idMap = new HashMap<String, Object>() ;
idMap = event.getComponent().getAttributes();
String url = (String) idMap.get("image");
System.out.println("The url is :"+url);
if(url.equals("/images/add_data_button.png")){
//upbean.setImageUrl("/images/remove_data_button.png") ;
imageUrl ="/images/remove_data_button.png" ;
selectoneRenderer = true;
inputTextRenderer = true;
}else
{
imageUrl ="/images/add_data_button.png" ;
selectoneRenderer = false;
inputTextRenderer = false;
}
}
当我第一次单击字段集中的命令按钮时,它工作正常并显示 selectoneMenu 和文本框。一旦进一步点击,ActionListener 就不会被调用。请帮我解决问题。
谢谢