2012-01-23 61 views
0

我有一個像下面的Rich PopupPanel一樣的代碼。如何從javascript顯示richPopupPanel窗口

代碼: -

<rich:popupPanel id="simplePopup1" autosized="true" width="300" 
height="60" moveable="true" resizeable="false" zindex="100" 
onmaskclick="#{rich:component('simplePopup1')}.hide()"> 
<f:facet name="header"> 
<h: outputText value="Popup" /> 
</f:facet> 
<f:facet name="controls"> 
<h: outputLink value="#" 
    onclick="#{rich:component('simplePopup1')}.hide(); return false;"> 
X 
</h: outputLink> 
</f:facet> 
<a4j:region> 
<a4j: outputPanel ajaxRendered="true"> 
<h:form ajaxSubmit="true"> 
<h:panelGrid columns="1"> 
<a4j:commandLink action="#{popupBean.eventHandler.onClose}" 
value="close" immediate="true" /> 
</h:panelGrid> 
</h:form> 
</a4j: outputPanel> 
</a4j:region> 
</rich:popupPanel> 

我能做出這個彈出使用A4J可見:命令按鈕。但是,而不是那個,我想用JavaScript代碼來顯示這個彈出窗口。

任何人都有任何想法,如何實現這一點。

我一直在嘗試下面的代碼,但它不工作。

<a4j: outputPanel> 
<script type="text/javascript"> 
javascript:document.getElementById('simplePopup1').style.display = 'none'; //or   javascript:rich:component('simplePopup1')}.show(); 
</script> 
</a4j: outputPanel> 

注: - 我使用RF4.0和JSF2.0與JBoss6.1 感謝 Jaikrat辛格

回答

0

這?:

#{rich:component('simplePopup1')}.show() 

,並可能:

<script> 
    function showPopup() { 
     #{rich:component('simplePopup1')}.show(); 
    } 
</script> 

MAG, Milo van der Zee

0

或者,如果你正在使用外部javacript(myscript.js)文件,你可以使用:

function openDialog() { 
    RichFaces.$("simplePopup1").show(); 
} 
+0

感謝@ Mr.B但即使我忘了爲什麼我問的問題。長時間... :) – Jaikrat