Version 2.4 doesn't submit form in popup

We have a gravity form (simple login type form) in a popup using Popup Maker. When we upgraded Gravity Forms to version 2.4.5, the form no longer submits at all. There is no console error, no apache error, nothing that tells us there is a problem. It simply doesn’t submit when we click the button or hit enter. If I revert back to version 2.3.3 (the latest we were on prior to upgrading to 2.4), everything works again. All other plugins, including Popup Maker and WP itself, are updated and all other functionality works.

Any ideas on what has changed in 2.4 to cause this behavior? Any way we can fix this? We love Gravity, don’t want lose such a great plugin.

If the form works when embedded in a normal page (rather than a popup) then the issue is not with Gravity Forms or WordPress. I recommend reporting the issue to the author’s of the WP Popup Maker plugin so they can address the issue. Thank you.

I created a new test page and added the same form, and it does not work in a normal page either. It simply does not submit the form anymore. It must be something with the new version, but I’m not sure what it can be. Here is the shortcode I used:
[gravityform id=“23” title=“false” description=“false” ajax=“true”]

Has something changed in the shortcode usage?

Chris, I kept digging and remembered that we have a gform_submit_button filter being called for these forms. What we have is almost exactly from the documentation found here: https://docs.gravityforms.com/gform_submit_button/#5-append-custom-css-classes-to-the-button

When I comment out the filter from our functions.php file, the form works fine (popup or regular page). When I put the filter back on, it will not submit anymore. For now, since it’s just a CSS class change, I worked another way around it. But it might be something to look into, I wonder if the documentation needs updating or maybe that hook/filter is broken in the new version? Not sure.

Here is our filter code:

    add_filter( 'gform_submit_button_25', 'form_submit_button', 10, 2 );
    function form_submit_button($button, $form) {
      $dom = new DOMDocument();
      $dom->loadHTML( $button );
      $input = $dom->getElementsByTagName( 'input' )->item(0);
      $classes = $input->getAttribute( 'class' );
      $classes .= " ma-popup gform-button";
      $input->setAttribute( 'class', $classes );
      return $dom->saveHtml( $input );
    }

Did you ever share a link to the page on your site where we can see this form?

No, I didn’t share a link before because I didn’t want to upgrade GF on our production site. However, now that I know where the problem lies (in the hook), here are two links for you. For either link, just click on the Sign In button at the top-right and it’ll bring up the popup form, then just click the Sign In button even without any info. On the main site, you’ll get some error messages (which I still need to clean up), which means it submitted correctly. But on the dev site, nothing happens. The dev site has the hook in functions.php, that’s essentially the only difference.

Main (works): https://www.forwardedge.org/
Dev (doesn’t work): https://dev.forwardedge.org/

Hope that helps track things down.