2016-07-20 3 views
0

나는 버튼이 동작이 수행되는 트리거 동안 요소를 숨길 싶습니다p : blockUI/pe : blockUI : 간단한 예제에서 왜 작동하지 않습니까?

<h:form id="sendtxform"> 
     <p:panelGrid columns="1" styleClass="ui-noborder">  
      <pe:blockUI block="input" widgetVar="blockUIWidget"> 
      LOADING<br /> 
       <p:graphicImage name="images/ajax-loader.gif" /> 
      </pe:blockUI> 

      <p:commandButton id="command" value="ISSUE APP" 
       actionListener="#{transactionXmlController.getTxDataPredefined}" 
       ajax="true" update="growl,input" 
       onstart="PF('blockUIWidget').block();" 
       oncomplete="PF('blockUIWidget').unblock();"> 
      </p:commandButton> 

      <p:inputTextarea id="input" cols="150" rows="30" autoResize="false" 
       value="#{transactionXmlEditableModel.xml}" /> 
     </p:panelGrid> 
    </h:form> 

나는 페이지와 시도 : blockUI/PE : blockUI와 함께 /를 ONSTART 및 onComplete를 속성없이.

내가 뭘 잘못합니까? 나는 다른 곳에서 blockUI를 사용하고 있으며, 잘 작동하고있다 : 유일한 차이점은 테이블이 자체 트리거라는 것이다.

나는 this 튜토리얼을 따랐다.

+0

뜻 panelgrid? 그걸 panelGrid 바깥에 넣으려고했는데 그때 그걸 작동시킬 수 있는지 보셨습니까? 그리고 어떤 버전을 사용하고 있습니까? – Kukeltje

+0

inputTextArea를 차단하고 싶었지만 그리드도 괜찮습니다. 그러나 그것은 효과가 없습니다. 나는 네가 제안한 것을했다. 이전과 같이 아무 일도 일어나지 않습니다. 나는 프라임 스 페이스 버전 6을 사용하고있다 – Tim

+1

나는 p : blockUI와 pe를 혼합하고 있다고 생각한다 : blockUI, primefaces 확장 컴포넌트는 블록 속성을 가지고 있지 않다. 타겟을 사용한다. – SiMag

답변

1

차단 입력이 작동하지 않는 것처럼 보입니다. 패널로 입력을 감싸 차단할 수 있습니다.

PrimeFaces 확장 :

<h:form id="sendtxform"> 
    <p:panelGrid columns="1" styleClass="ui-noborder"> 
     <pe:blockUI target="panel" widgetVar="blockUIWidget"> 
     LOADING<br /> 
      <p:graphicImage name="images/ajax-loader.gif" /> 
     </pe:blockUI> 

     <p:commandButton id="command" value="ISSUE APP" 
      actionListener="#{transactionXmlController.getTxDataPredefined}" 
      ajax="true" update="input" 
      onstart="PF('blockUIWidget').block();" 
      oncomplete="PF('blockUIWidget').unblock();"> 
     </p:commandButton> 

     <p:panel id="panel"> 
      <p:inputTextarea id="input" cols="150" rows="30" autoResize="false" 
      value="#{transactionXmlEditableModel.xml}" /> 
     </p:panel> 
    </p:panelGrid> 
</h:form> 

PrimeFaces :

<h:form id="sendtxform"> 
    <p:panelGrid columns="1" styleClass="ui-noborder"> 
     <p:blockUI block="panel" trigger="command"> 
     LOADING<br /> 
      <p:graphicImage name="images/ajax-loader.gif" /> 
     </p:blockUI> 

     <p:commandButton id="command" value="ISSUE APP" 
      actionListener="#{transactionXmlController.getTxDataPredefined}" 
      ajax="true" update="input"> 
     </p:commandButton> 

     <p:panel id="panel"> 
      <p:inputTextarea id="input" cols="150" rows="30" autoResize="false" 
      value="#{transactionXmlEditableModel.xml}" /> 
     </p:panel> 
    </p:panelGrid> 
</h:form> 
+0

감사하지만 작동하지 않습니다. 우리는 다른 버전을 사용하고 있습니까? (2.2 for me) – Tim

+0

방금 ​​시도했는데 작동합니다. 2.2, pf 6 e pfe를 사용합니다. 6. js console에서 오류가 있습니까? – SiMag

+0

코드에서 차단 속성이 있음을 확인했습니다. PF 확장에는 해당 속성이 없습니다. 대상을 사용하십시오. – SiMag

관련 문제