0
카탈로그를 업데이트해야하는 webapp에이 모듈이 있습니다.JSF를 처리하는 동안 버튼을 사용하지 않고 이미지로드 중 표시
아이디어는 비활성화h:commandButton
및 에 모두 조치가 버튼을 클릭 한 후 바로 발생 해야하는하는 h:graphicImage
를 표시합니다. 마지막 업데이트 프로세스가 종료 될 때 그것은 숨기기, 다른 방법으로해야h:graphicImage
, 활성화h:commandButton
하지만 이번에는 하나 '업데이트 성공'또는 '업데이트 실패'라는 라벨 h:outputText
을 보여줍니다.
내 코드의 문제는 프로세스가 완료된 직후에 이미지와 레이블이 나타나고 위에서 설명한 내용을 수행 할 방법을 찾을 수 없다는 것입니다.
어디서 무엇을 놓치고 있습니까?
건배.
<a4j:commandButton id="btnActualiza" value="Actualizar catálogos"
render="messageCatalogos actualizacionCorrecta
@this imgProcesando"
onclick="this.disabled=true;"
oncomplete="this.disabled=false"
actionListener="#{administrationBean.doImgProcesandoVisible}"
action="#{administrationBean.doActualizaCatalogos}"/>
<a4j:outputPanel id="imgProcesando">
<h:graphicImage rendered="#{administrationBean.imgProcesandoRendered}"
url="img/imgLoading.gif"/>
</a4j:outputPanel>
<h:panelGroup/>
<h:panelGroup/>
<a4j:outputPanel id="actualizacionCorrecta" style="font-size: 14px; color: #D17100">
<h:outputText rendered="#{administrationBean.actualizacionCorrectaLabelRendered}"
value="Actualización correcta !"/>
<h:outputText rendered="#{administrationBean.actualizacionFalloLabelRendered}"
value="Fallo la actualización !"/>
</a4j:outputPanel>
UPDATE
내 dev에 환경 :
- 인 Mojarra 2.1.6
- RichFaces 4.1.0.Final
- 톰캣 7.0.14 (테스트)/톰캣 7.0 .22 (prod)
감사와
. 나는 그것을 시도했지만 코드'$ ('loading'). show()'는 이미지를 보이게하지 않는다. 거기에 또 다른 방법이 있을까요? 어쩌면 getDocumentById와 같은 것입니다. JS에 대해 모르겠지만 구성 요소에 대한 참조를 얻는 방법을 본 적이 있습니다. – BRabbit27
아마도 RichFaces가 noconflict 모드에서 jQuery를 실행 중일 수 있습니다. '$ ('loading')'대신'jQuery ('loading')'을 사용하십시오. 그렇지 않으면 항상 좋은 'ol'document.getElementById ('loading ')'을 사용하고'.style.display ='block''과'.style.display = 'none''을 각각 설정할 수 있습니다. – BalusC
아, 이미지가 양식 안에 있으면 양식 ID도 함께 입력해야합니다. 궁극적으로 이미지의 클라이언트 ID가됩니다. 생성 된 HTML 소스를 확인하십시오. – BalusC