1 Reply Latest reply on Apr 15, 2011 9:22 AM by Ilya Shaikovsky

    Strange Modal Panel Behaviour

    Tony Tony Newbie

      I have a problem with a modal panel. I can't close it, but just sometimes. I do the following:

      1. Press the command link to open the modal (it opens ok)
      2. Press the close button in the modal (it closes ok)
      3. Repeat 1 (it opens ok)
      4. Repeat 2 (It does not close!!!)

      Sometimes I can open and close more times before it stops working.

      Sometimes the modal opens ok but it closes automatically after 0.5 seconds ,, wtf???


      Here is my code.

                              <a4j:commandLink id="btnTestQuery" style="width: 130px;"



                                              reRender="dtbParameters, lblInputEmpty, modal_InputDBData"                               

                                              ajaxSingle="#{true}" value="Test">



                      <a4j:jsFunction name="testQuery"

                      reRender="ErrorQuery, modal_InputDBData"  action="#{extLinkBean.ReadParameters}"

                      data="#{extLinkBean.errQuery}" ajaxSingle="#{true}"

                      oncomplete="if (data == 0) {Richfaces.showModalPanel('modal_InputDBData');}

                      else {Richfaces.showModalPanel('ErrorQuery');}               

                      " />



      And modal_inputDBData is


           <rich:modalPanel id="modal_InputDBData" height="#{extLinkBean.modalInputHeight}" style="overflow-y:auto;">

                  <f:facet name="controls">


                          <h:graphicImage value="/resources/imgs/modal/close.png"


                              onclick="Richfaces.hideModalPanel('modal_InputDBData');return false;" />





      In the ReadParameters action I make some validations and if there is an error (flag errQuery) I open modalpanel ErrorQuery, else I open modalpanel modal_InputDBData. In this case I get no error, so what I am trying to open is modal_InputDBData.

      Apparently hide command is not working.



      I debugged richfaces javascript and hide command is executing, but it ends in an if line with condition "this.shown" , it is undefined and it dies.


      Thank you,

        • 1. Strange Modal Panel Behaviour
          Ilya Shaikovsky Master

          just avoid concurrent requests and things will be ok. now your a4j:commandLink calls the jsFunction on onclick and then fires it's own request.


          Why do you need additional jsFunction? just define all the same attributes in link. Or if need - add return false; after its call but it will deactivate link ajax.