我想根據複選框的值生成一個輸出文本;這裏是我的代碼:h:selectBooleanCheckbox第一次不起作用
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<body>
<ui:composition template="../WEB-INF/templates/template.xhtml">
<ui:define name="content">
<h:form id="formModifClt">
<h:outputText value="voulez-vous modifier cette image ?"/>
<h:selectBooleanCheckbox value="#{clientController.modifierImage}" >
<f:ajax event="click" listener="#{clientController.onChangeCheckBox()}" render="textPanel" />
</h:selectBooleanCheckbox>
<p:outputPanel id="textPanel" autoUpdate="true" >
<h:outputText value="Oui" rendered="#{clientController.modifierImage}" />
<h:outputText value="Non" rendered="#{!clientController.modifierImage}" />
</p:outputPanel>
<p:outputPanel autoUpdate="true" >
<h:outputText value="Logo" rendered="#{clientController.modifierImage}" id="logo" />
<p:fileUpload id="up" fileUploadListener="#{fileUploadController.handleFileUpload}"
mode="advanced"
sizeLimit="100000"
required="true"
allowTypes="/(\.|\/)(gif|jpe?g|png)$/" rendered="#{clientController.modifierImage}"/>
</p:outputPanel>
<p:commandButton action="#{clientController.modifClient()}" value="Modifier" ajax="false"/>
</h:form>
</ui:define>
</ui:composition>
</body>
我的問題是,第一次複選框用戶點擊的價值沒有改變和onChangeCheckBox()不wroking。從第二次開始,它工作正常。 注意:我不想在javascript中執行此操作,因爲我根據布爾值複選框完成了其他處理。
這裏是我的控制器:
public void onChangeCheckBox() {
System.out.println("modifierImage="+modifierImage);
}
/**
* @return the modifierImage
*/
public boolean isModifierImage() {
return modifierImage;
}
/**
* @param modifierImage the modifierImage to set
*/
public void setModifierImage(boolean modifierImage) {
this.modifierImage = modifierImage;
}
與balusC的解決方案是更好的(它沒有給出一個chcked checkButton當它被點擊了第一次),但問題依然存在!
你可以發佈你的clientController嗎? – 8bitjunkie
控制器的範圍是什麼? – 8bitjunkie