2013-06-04 8 views
0

<p:ajax>을 사용하여 현재 구성 요소를 업데이트/채우고 있지만 autoComplete에서 Object를 선택하면 Ajax가 구성 요소를 업데이트하지 않습니다. 아래에서Ajax 업데이트로 내 구성 요소가 업데이트되지 않음

내 코드 :

<p:panel header="Actviter le Projet"> 
<!--############# Chercher le Projet #############--> 
    <div id="projetCompleteCenter" align="center"> 
    <h:outputLabel value="#{bundle.searchProject} " /> 
    <p:autoComplete id="autoCompleteProjet" forceSelection="true" 
    minQueryLength="3" value="#{projetMB.projet}" 
     completeMethod="#{projetMB.completeProjet}" var="projet" 
     itemLabel="#{projetMB.projet.nomProjet}" dropdown="true" > 
    <p:ajax update="nomProjet nombreHeure dateDemarrage typeProjet" /> 
</p:autoComplete> 
</div> 

<p:separator /> 

<!--############# Donées du Projet #############--> 
<div id="idPanel"> 
     <h:panelGrid columns="2"> 

    <p:outputLabel for="nomProjet" value="#{bundle.nomProjet} " /> 
         <p:inputText id="nomProjet" value="#{projetMB.projet.nomProjet}" 
          required="true"> 
          <f:validateLength minimum="3" /> 
         </p:inputText> 

         <p:outputLabel for="nombreHeure" 
          value="#{bundle.nombreHeuresProjet} " /> 
         <p:inputText id="nombreHeure" 
          value="#{projetMB.projet.nbHeuresProjet}" required="true"> 
          <pe:keyFilter mask="num" for="nombreHeure" /> 
         </p:inputText> 

         <h:outputLabel for="dateDemarrage" 
          value="#{bundle.dateDemarrageProjet} " /> 
         <p:calendar id="dateDemarrage" 
          value="#{projetMB.projet.dateDebutProjet}" required="true" 
          pattern="dd/MM/yyyy" showOn="button" navigator="true"/> 

         <h:outputLabel for="typeProjet" value="Type du projet: " /> 
         <h:selectOneListbox id="typeProjet" 
          value="#{projetMB.projet.type}"> 
          <f:selectItems value="#{projetMB.typeProjetList}" var="pr" 
           itemLabel="#{pr.typeLabel}" itemValue="#{pr.typeValue}" /> 
         </h:selectOneListbox> 

        </h:panelGrid> 
       </div> 

에 어떤 문제가 있습니까?

감사합니다.

+0

난 당신이''갱신 = "nomProjet nombreHeure dateDemarrage typeProjet"잘못된 ID를 가지고 생각합니다. –

+0

** projetMB ** 및 ** bundle **의 범위는 무엇입니까? –

+0

@LongNK 무엇이 잘못 되었나요? 참조 : [Primefaces forum] (http://forum.primefaces.org/viewtopic.php?f=3&t=400) – Andriel

답변

1

UIInputs의 기본 이벤트는 valueChange 이벤트이므로 나는 p:ajax이라는 이벤트 속성을 지정하지 않았다는 문제가 있다고 생각합니다. showcase에 명시 적으로 지정되므로 p:autoComplete의 기본 이벤트가 실제로 "itemSelect"- 이벤트라고 생각합니다. 그래서 당신은 - 이벤트 명시 적으로 "itemSelect"를 지정해야합니다 :

<p:ajax event="itemSelect" update="nomProjet nombreHeure dateDemarrage typeProjet" /> 
+0

감사합니다! 그것의 작품! :) – Andriel

관련 문제