Debugging AJAX Form Submissions
Many WordPress form plugins submit data using AJAX (Asynchronous JavaScript and XML) through the admin-ajax.php endpoint. When these AJAX submissions fail during CheckView tests, it can be caused by several factors.
How AJAX Form Submissions Work
When a user submits a form that uses AJAX, the browser sends a background request to wp-admin/admin-ajax.php with the form data. The server processes the submission and returns a response without reloading the page. This is the standard approach used by plugins like Gravity Forms, WPForms, Contact Form 7, and Fluent Forms.
Common Causes of AJAX Failures
- Security plugins blocking requests: Firewall rules or bot detection may block AJAX requests from CheckView. See our whitelisting guide for solutions.
- admin-ajax.php returning errors: PHP errors, memory limits, or plugin conflicts can cause the AJAX endpoint to return error responses.
- CORS or authentication issues: Cross-origin restrictions or expired authentication cookies may prevent AJAX requests from completing.
- Rate limiting: Some hosting providers or security plugins limit the frequency of requests to admin-ajax.php.
Troubleshooting Steps
- Check the Network Log (HAR): Download the Network Log from the test results page. Look for requests to
admin-ajax.php and check the response status code and body for error messages.
- Whitelist CheckView IPs: Ensure CheckView’s IP addresses are whitelisted in your security plugins and hosting firewall.
- Check PHP error logs: Review your server’s PHP error log for any errors triggered during the AJAX request.
- Update the CheckView helper plugin: Ensure the CheckView WordPress helper plugin is updated to the latest version, as it includes compatibility fixes for AJAX submissions.
- Test manually: Submit the form manually on your site to confirm it works outside of automated testing. If it fails manually too, the issue is with the form configuration, not CheckView.
If you continue to experience AJAX submission failures after these steps, contact our support team with the Network Log from the failed test for further investigation.