我想彈出一個窗口,當有人點擊數據表上的按鈕。問題與JSF 1.1和PopUp
<h:commandButton
action="#{cacheController.popupDetails}"
immediate="false"
onclick="popup()"
value="View Details"
styleClass="submit">
</h:commandButton>
關聯的彈出功能
function popup() {
window.open('RDDetails.jsf','popupWindow', 'dependent=yes, menubar=no, toolbar=no, height=500, width=400');
}
現在,在新的「RDDetails.jsf」的文件,我試圖訪問同一managedBean cacheController。但問題是,在彈出的窗口和JSF的生命週期不同步,因此彈出窗口首先顯示空白,當我刷新時,它會提取正確的數據。
是否有無論如何我可以點擊一個按鈕,它將在託管然後打開一個彈出窗口,使處理後的數據fr失效om託管bean。
我正在使用JSF 1.1。
我試圖創建從後臺bean像這樣的URL - 的onclick = 「#{} cacheController.url」 和該網址將具有JSp樣式參數?param = value&param2 = value2等等。您認爲這會起作用嗎? – Shamik 2010-01-29 23:04:11
不,您需要通過'window.open()'以相同的方式傳遞網址。 – BalusC 2010-01-29 23:12:47
是我做這種方式 - 在這裏是在支持Bean我的getURL方法 - \t公共字符串的getURL(){ \t \t selectedRD =(RuleDisplayTO)dataTable.getRowData(); \t \t回報 「window.open('/ e2fo /工具/ cachetool/test.jsp的?NAME =」 \t \t \t \t + selectedRD。getName() \t \t \t \t +「','popupWindow','dependent = yes,menubar = no,toolbar = no,height = 500,width = 400'); return false;」; \t} – Shamik 2010-01-29 23:36:54