![](/img/trans.png)
[英]Validate h:selectOneMenu and t:inputFileUpload with f:ajax blur
[英]Why doesn't my f:ajax work with h:selectOneMenu?
使用JSF 2.0,Glassfish 3.2,Primefaces 2.2.1
我有一個包含幾個復合組件的頁面。 在這些組件之一中,我有一個h:selectOneMenu。 我試圖添加f:ajax以在選擇新值時調用方法。
這是頁面中的h:selectOneMenu組件的外觀:
<h:selectOneMenu id="selectRmDD" styleClass="editSelectRmDD" value="#{scheduleEditSessionBean.selectedRoom}" >
<f:selectItems id="roomList" value="#{scheduleEditSessionBean.roomList}"/>
<f:ajax listener="#{scheduleEditSessionBean.selectRmDD_processValueChange}" event="valueChange" render="@form" />
</h:selectOneMenu>
當我從h:selectOneMenu中選擇一個新項目時,將調用偵聽器函數,但selectedRoom中的值為null。 我也在調試器中進行了查看,甚至AjaxBehaviorEvent中組件的SubmittedValue也為null。 這是在選擇新值和selectedRoom的定義時調用的方法:
public void selectRmDD_processValueChange( AjaxBehaviorEvent ae) {
String s = getSelectedRoom();
System.out.println( "Selected room = "+s );
if( s != null )applyRoomBtn_action();
}
private String selectedRoom = "1";
public String getSelectedRoom() { return this.selectedRoom; }
public void setSelectedRoom(String s) { this.selectedRoom = s; }
有什么想法為什么價值沒有被填補?
謝謝。
當roomList
的SelectItem
在處理表單提交時將null
或空字符串作為值時,將發生這種情況。 沒有其他原因出現,可能是因為String.class
的Converter
不能正常工作,但是應該影響到所有綁定到String
屬性的輸入。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.