2013-11-25 6 views
3

이 예는 <h:form>의 블로킹을 <pe:blockUI>으로 설명한다. 헤더 및 이에 의해 차단되지 않는 왼쪽 바 템플릿 존재하지만 <h:form>전체 JSF 페이지를 p : blockUI/pe : blockUI로 차단하도록 대상을 지정하는 방법?

<h:form id="form" prependId="true"> 
    <pe:blockUI target="form" widgetVar="blockBodyUIWidget"> 
     <h:panelGrid columns="2"> 
      <h:graphicImage library="default" name="images/ajax-loader1.gif" class="block-ui-image"/> 
      <h:outputText value="#{messages['blockui.panel.message']}" class="block-ui-text"/> 
     </h:panelGrid> 
    </pe:blockUI> 

<p:commandButton id="btnSubmit" 
       onstart="PF('blockBodyUIWidget').block()" 
       oncomplete="PF('blockBodyUIWidget').unblock();}" 
       update=":form:dataGrid" actionListener="#{bean.listener}" 
       icon="ui-icon-check" 
       value="Save"> 
</h:form> 

이 블록.

나는 템플릿 페이지에 <h:body id="body"> <pe:blockUI target="body"...을 차단하려고 노력하지만 예외가 나타내는 끝나는 작동하지 않았다 "뷰의 id 몸 구성 요소를 찾을 수 없습니다."

그럼, 어떻게 대상 전체 페이지?

내가 PrimeFaces extension<pe:blockUI>을 사용하고 있지만이 같은 일이 PrimeFaces

+0

난 당신처럼 하나의 문제는, 기본적으로 하나 개의 버튼으로 한 페이지가 존재하고이 버튼을 어떻게 1 페이지를 고정하는 2 페이지에 하나 개의 링크를 가지고 있습니다 페이지 2 로딩 시간 동안? 이 질문을 만듭니다. http://stackoverflow.com/q/26304582/3703397 – Marin

답변

10

<p:blockUI>에 의해 설명 될 수있는 것은 몸에 ID를 부여하고 <p:blockUI> 구성 요소의 block 인수에 참조.

예 :

<h:body id="entirePage"/> 

<p:blockUI id="blockUI" widgetVar="blockBodyUIWidget" block=":entirePage"/> 
+1

오 예! ''의 target 속성에있는'id' 앞에':'접두어를 붙이는 것을 잊었습니다. 정말로 죄송합니다. 그것은'target = ": body"'이어야합니다. 감사. – Tiny

+0

네가 가지고있는 것과 같은 문제가 하나 있는데 기본적으로 하나의 버튼이있는 한 페이지가 있으며이 버튼은 페이지 2에 대한 링크가 하나 있습니다. 2 페이지의 로딩 시간 동안 페이지 1을 잠그는 방법은 무엇입니까? – Marin

+0

나는이 질문을 만든다. http://stackoverflow.com/q/26304582/3703397 – Marin