2009-07-04 10 views
5

Tek bir uygulamada jsf erişim yüzleri kullanıyorum. Zengin: modalPanel kullanarak bazı ayrıntıları pop-up okuma ve sunucudan yanıt aldıktan sonra tha paneli kullanarak mohaPanel gizlemek istiyorum ama nasıl bilmiyorum,Zengin nasıl gizlenir: JSF'de Ajax yanıtında modalPanel

Ben hala çözüm için çalışıyoruz yardım

Zengin modalPanel'in kodu böyle bir şeydir.

<rich:modalPanel id="panelID" minHeight="200" minWidth="450" height="200" width="500"> 
<a4j:commandButton reRender="sampleID" action="#{SomeTestAction}" image="sample-button.gif"/> 
</rich:modalPanel> 

cevap

5

O kolay, yazabilirsiniz:

**UPDATED** 

JavaScript gerekmez, çünkü bu çözüm, daha iyidir.

<a4j:commandButton reRender="sampleID" action="#{SomeTestAction}" image="sample-button.gif"> 
     <rich:componentControl for="panelId" operation="hide" event="onclick" /> 
</a4j:commandButton> 

veya JavaScript

<a4j:commandButton reRender="sampleID" action="#{SomeTestAction}" image="sample-button.gif" oncomplete="javascript:Richfaces.hideModalPanel('panelId');"/> 

Yoksa formu gönderebilirsiniz, ve açılan kaybolur ile

.
<a4j:commandButton reRender="sampleID" action="#{SomeTestAction}" image="sample-button.gif" oncomplete="document.getElementById('Id_form').submit();"/>: 

Nerede " Id_form" - <rich:modalPanel> gösterildi formun kimliğidir.

+0

Bu benim için çalışıyor .. –

+0

normal javascript dosyasından kapatmak mümkün mü? (Ben bir 'onmaskclick' ile farklı düşünmek istiyorum ama sonunda kapalı olmalı – Joerg