3 Replies Latest reply on Feb 4, 2008 7:14 PM by Igor Dikhtyaruk

    Modal Panel stopped working in 3.1.3 as used to work in 3.1.

    Igor Dikhtyaruk Newbie

      Hi,

      I've got an example, where the header bar is not shown in the modal panel even though <f:facet name="header"> exists. The same example works perfectly in FireFox in version 3.1.2, but it does not work in 3.1.3.
      In IE it works for both versions, though.
      Could you please have a look and explain, how better to implement the functionality or raise a JIRA if there is a bug.

      <ui:composition xmlns="http://www.w3.org/1999/xhtml"
       xmlns:ui="http://java.sun.com/jsf/facelets"
       xmlns:h="http://java.sun.com/jsf/html"
       xmlns:f="http://java.sun.com/jsf/core"
       xmlns:a4j="http://richfaces.org/a4j"
       xmlns:s="http://jboss.com/products/seam/taglib"
       xmlns:rich="http://richfaces.org/rich">
      <style>
      .dr-mpnl-pnl-b {
       padding: 0px;
      }
      .pnl-body {
       height:255px;
       overflow:auto;
      }
      </style>
      
      <body>
      
      <a4j:form>
      
       <a href="#" onclick="javascript:Richfaces.showModalPanel('helpModalPanel');">Show</a>
      
       <rich:modalPanel id="helpModalPanel" resizeable="false"
       height="300" width="600">
       <f:facet name="header">
       <h:outputText value="Help" />
       </f:facet>
       <f:facet name="controls">
       <h:graphicImage value="../images/content/close.jpg" alt="Close" style="cursor:pointer" onclick="Richfaces.hideModalPanel('helpModalPanel')" />
       </f:facet>
       <rich:panel bodyClass="pnl-body">
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
      The modal panel has an absolute layout.There is no reason to put in on the page where it is called.If you want to perform submits from this modal panel, you should have a separate form inside it. In this case, the panel must be declared outside of the other form on the same page. I.e. nested forms are not allowed.
      Those requirements are applied because of the bug in earlier Internet Explorer versions, as the dialog is moved to the top of the browser DOM tree just after it is rendered.
       </rich:panel>
       </rich:modalPanel>
      
      </a4j:form>
      </body>
      </ui:composition>
      


      The reason, why we used <rich:panel> is because the content inside is not static. We use:
      <h:outputText id="helpOut" value="${helpText}" escape="false"/>
      

      to output the text.
      inside.

      Thanks for your help