更改主要对话框的宽度

时间:2015-04-28 12:11:15

标签: jquery primefaces jsf-2.2

我想增加已经显示的primefaces对话框的宽度。用户单击链接/按钮,对话框在宽度上扩展并显示更多内容。 我尝试的所有方法都没有成功:

1:用jquery改变:

$('theFormId\\:theDialogId').css('width', 1000);

2:将p:dialog width属性引用到支持bean值:

<p:dialog width="#{myBean.dialogWidth}"...

单击链接/按钮时,将更改辅助bean dialogWidth成员并更新对话框。不幸的是,这会关闭对话框。

是否有可能&#34;生活&#34;调整已显示的对话框的大小?

我正在使用PF 5.1.16和JSF 2.2.10

此致 奥利弗

3 个答案:

答案 0 :(得分:1)

从bean和按钮设置宽度值以设置宽度

class A
{
    public string B { get; set; } // <-- This compiles just right!
}

class B : A
{
}

或尝试放<h1>Dialog width</h1> <h:form> <p:commandButton id="editBtnWF" icon="ui-icon-pencil" title="WF-R" update="@form" action="#{testBacking.setWidth}" oncomplete="PF('dlg2').show();"> </p:commandButton> <p:dialog header="Modal Dialog" id="dlg" widgetVar="dlg2" modal="true" width="#{testBacking.dlgwidth}"> <p:inputText value="#{testBacking.dlgwidth}"></p:inputText> <p:commandButton id="ee" icon="ui-icon-pencil" title="WF-R" update="dlg" action="#{testBacking.setWidth}" oncomplete="PF('dlg2').show();"> </p:commandButton> </p:dialog> </h:form> ,它适用于我

bean中的位置如下:

update="@form"

答案 1 :(得分:0)

实际上你不需要增加对话框的宽度,如果更新对话框内的内容,它会自动改变宽度以适应其内容

但是你可以改变宽度

<p:dialog id="dlg" width="#{bean.widthValue}">
      ---contents-----
</p:dialog>

<p:commandButton  update="dlg" 
                  process="@this" 
                  actionListener="#{bean.changeWidth()}" />

在你的bean

int widthValue;
public void changeWidth(){
   this.widthValue=500;
}

答案 2 :(得分:0)

最后,我从支持bean中映射了对话框的宽度和高度,这里的答案如何描述。表单/对话框的更新将关闭对话框。我使用omnifaces标签在对话框关闭和打开期间将输入的用户数据保留在表单中。