2013-05-02 40 views
0

我在selectOneMenu組件和primefaces文件上載中遇到問題。顯示不能使用onselectMenu和文件上傳

<h:outputLabel value="Categorie :" /> 
      <p:selectOneMenu value="#{composantbean.selectedCategoryId}" required="true" > 
       <f:selectItem itemLabel="Select categorie" itemValue="" /> 
       <f:selectItems value="#{composantbean.listcat}" var="cat" itemValue="#{cat.nomCat}" itemLabel="#{cat.nomCat}" /> 
       <p:ajax update="panlecart2" event="change" listener="#{composantbean.catListener()}"/> 
      </p:selectOneMenu> 

我的問題是在顯示屏上。 的selectOneMenu用於顯示但ItemLabel隱藏用一個黑色我的主題「trontastic」

enter image description here 和不顯示文件上傳。

此問題不再exite當我瀏覽器而不是鉻 或當我做

<p:commandButton value="Annuler" update="panel1" process="@this"> 
      <p:resetInput target="panel1" /> 
     </ p: commandButton> 

enter image description here 我應該做的,請預先感謝您

回答

1

工作,我不知道的根本原因,但這裏是一個臨時解決方案:

$(document).ready(function() { 
    $(document.getElementById('button')).click(); 
}); 

而這個腳本執行你的按鈕:

<p:commandButton id="button"value="Annuler" update="panel1" process="@this" style="display:none;"> 
     <p:resetInput target="panel1" /> 
</p:commandButton> 

儘量給JavaScript函數裏面的按鈕的確切客戶端ID。你可以通過瀏覽器的設置來檢測它。

關於問題本身; p:selectOneMenu顯示標籤內的選定值。我猜。覆蓋它的css,讓一個id給你的p:selectOneMenu(讓菜單),如果它存在於一個表單內(假設它的id是表單)。所以,你可以嘗試通過更改標籤的CSS:

$(document.getElementById('form:menu_label')).css("width":150); 

或者直接改變CSS類,這是.ui-selectonemenu label

也能由視圖狀態錯誤ajax=false避免應該添加到導航按鈕。其實導航應該通過鏈接和他們的outcome財產如here完成。

+0

當我把它在同一頁從anothor jsp頁面 < %response.sendRedirect(「login.jsf」); %> 它工作得很好,爲什麼 – FERESSS 2013-05-02 10:55:10

+1

所以我改變我的方法豆這樣,它現在正常工作 – FERESSS 2013-05-02 10:56:41

+1

偉大的,可以再次查看狀態錯誤。如果你通過按鈕來到這個頁面,你可以添加'ajax = false'。 – 2013-05-02 10:58:21

1

當我chnage我梅索德這樣

public String Ajouter(){ 
    selcetitem=new Composant(); 
    return "AjoutC?faces-redirect=true"; 
} 

,而不是這個

public String Ajouter(){ 
     selcetitem=new Composant(); 
     return "AjoutC"; 
    } 

它工作得很好:)

+0

您標記爲答案以關閉您的問題。 – 2013-05-03 04:17:05