I have built a email newsletter signup form which posts into mailchimp from my website. I have Google reCAPTCHA added to the form and have a data-callback to enable the submit button as it is initially disabled. This was working fine in all browsers last night and did tests with success & signed off on it..and went home. I got in this morning and found the subscribe button will not enable / data-callback does not work? Strange..
Callback
<div class="g-recaptcha" data-callback="recaptcha_callback" data-sitekey="xxxxx"></div>
Input button at bottom of form
<input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button" disabled>
Scripts
<script src='https://www.google.com/recaptcha/api.js'></script> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function() { function recaptcha_callback(){ alert("callback working"); $('.button').prop("disabled", false); } )}; </script>
For reCaptcha v2, use: grecaptcha. reset();
Calls one or several javascript functions when a specified event occurs.
Change your script to...
<script type="text/javascript"> function recaptcha_callback(){ alert("callback working"); $('.button').prop("disabled", false); } </script>
By placing your function inside the document.ready
event, it is not in the global scope and therefore unreachable by the captcha control.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With