2012-11-14 30 views
0

使用模態屬性設置爲true的<p:dialog>標記(在Prime Faces 3.3.1中)時,會出現奇怪的行爲。 「黑色半透明面板」 - 位於彈出框和頁面之間 - 正確地覆蓋頁面大小從上到下,但是當我向下滾動頁面時,它會被剪切。使用模態面板問題的Prime Faces對話框

我認爲Prime Faces(或jQuery)正在檢索窗口的大小而不是頁面的大小來計算深色半透明面板的尺寸。

任何想法?

這是我的代碼:

<p:dialog draggable="false" id="dialogAddItems" header="Add item" modal="true" resizable="false" widgetVar="widgetDialogAddItems" width="600" height="200"> 
    <h:form> 
     ... 
    </h:form> 
</p:dialog> 

回答

4

我有這個問題primefaces 3.4,設置屬性的<p:dialog>appendToBody="true"解決了這個問題。我希望這也能解決你的問題。

+0

而且你可能想看看這個http://code.google.com/p/primefaces/issues/detail ?id = 576,這是primefaces中的一個bug –

+0

appendToBody = true會導致後端bean處理請求的方式出現一些問題。這絕對是primefaces中的一個錯誤。我希望他們儘快修復。 – JulioHM

0

所以,我試着appendToBody="true"並將標籤放在頁面上的許多不同的地方。沒有工作。試圖將Prime Faces更新爲最新版本。也沒有工作。所以,我的解決方案是一個解決辦法,但它是因爲我沒有其他的想法:

.ui-widget-overlay { 
    position: fixed !important; 
    top: 0px !important; 
} 
+0

我試着將這個添加到我的CSS來覆蓋當前的主題,但沒有運氣。我仍然不得不使用modal = false的p:dialog。我希望他們在下一個版本中解決這個問題。 – JulioHM