在我的XPage我有被綁定到託管bean單選按鈕組控制:獲得價值被綁定到託管bean
<xp:radioGroup value="#{employeeBean.employee.staffMember}" id="radioStaff">
<xp:selectItem itemLabel="Yes" />
<xp:selectItem itemLabel="No" />
<xp:eventHandler event="onchange" submit="true" refreshMode="partial" refreshId="radioStaffDept"></xp:eventHandler>
</xp:radioGroup>
當設置爲是的,我想顯示另一個輸入字段進入部門。
我試圖設置通過局部刷新選項的可見性,但我總是得到它返回的值是如何通過我的bean設置的。
我測試,以收集它通過值:加載時,值是不,如果我設定的單選按鈕來
<xp:text escape="true" id="computedField1">
<xp:this.value><![CDATA[#{javascript:
var radio1:com.ibm.xsp.component.xp.XspInputRadio = getComponent("radioStaff");
return radio1.getValue()}]]></xp:this.value>
</xp:text>
所以,是的,它仍然號
我應該如何收集(改變)單選按鈕的值?
Ps我嘗試添加綁定屬性(例如binding="#{myValue}"
),但通過此方法獲得了相同的不期望結果。
的PP我也試着設置onChange事件的staffMember場但這並沒有工作,要麼(employeeBean.employee.setStaffMember("Yes");
)
===
我不知道如果我用下面的正確理解是它代碼我可以檢查一個人是否是職員,但是當我更改單選按鈕中的選項時,如何將值(暫時)寫回我的bean中的提議對象?
private Employee employee;
public Boolean isStaffMember(){
if (employee.getStaffMember()=="Yes"){
return false;
}
else{
return true;
}
}
public void setStaffMember(String value){
employee.setStaffMember(value);
}
<xp:radioGroup
value="#{employeeBean.employee.staffMember}"
binding="#{staffMember}" id="radioStaffMember">
<xp:selectItem itemLabel="Yes" />
<xp:selectItem itemLabel="No" />
<xp:eventHandler event="onchange"
submit="true" refreshMode="partial"
refreshId="pnlStaffMemberDept" >
<xp:this.action><![CDATA[#{javascript:var thisVal = getComponent("radioStaffMember").getValue();
employeeBean.setStaffMember(thisVal);}]]></xp:this.action>
</xp:eventHandler>
</xp:radioGroup>
我注意到在我的窗體上出現了多個複選框組控件導致問題。當我刪除它們時,SSJS按預期工作。這是一個已知的錯誤? – Malin