3 Replies Latest reply on May 11, 2011 10:08 AM by ciepol

    rich:modalpanel IE8

    uririch

      Hi,

      I created a search wizard using

      rich:modalpanel. Everything worked fine in IE7, but in IE8 I had issues with form submission. So I fixed that issue by using only one form to hold all the components in the parent page and the modalpanel. Here is the skeleton of my UI code:

       

      Parent page:

      <ui:composition>

      <h:form>

      <ui:include src="modalpage.xhtml"/>

       

      <a4j:commandbutton id="openmodalpanel" onclick="Richfaces.showmodalpanel(panel id);"/>

       

      <h:commandbutton id="b1"/>

      <h:commandbutton id="b2"/>

      <h:commandbutton id="b3"/>

      </h:form>

      </ui:composition>

       

       

      Modal page:

       

      <head></head>

      <body>

      <rich:modalpanel>

       

      <h:inputtext id="it1"/>

      <h:inputtext id="it2"/>

      <h:commandbutton id="search" action="#{bean.action}"/>

      </rich:modalpanel>

      </body>

       

      When button 'search' is clicked in the modalpanel, the action is triggered but the text fields are not set, that is, their setter methods are never called. I tried adding a form aound the modalpanel components but that invalidates buttons b1, b2 & b3 on the parent page and it still doesn't set the textbox values.

       

      Any help is appreciated.

       

      Thanks.

        • 1. rich:modalpanel IE8
          ilya_shaikovsky

          modal panel has limitations related to h:form. it should be only inside and not outside by default. And you should read about domElementAttachment in order to check how to avoid that restriction.

          • 2. rich:modalpanel IE8
            uririch

            Thanks for the reply. I read about the domElementAttachment attribute and set it to "form" and "parent", neither one solved the issue above. The text fields are still not being set.

             

            And I am not sure how to debug the issue.

            • 3. rich:modalpanel IE8
              ciepol

              If it works under IE7 why not try to force IE8 to behave like it's predecessor.

              Try inserting <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9" /> into your document <head> section.