Si hallas algún fallo con tu código o proyecto, recuerda probar siempre en un ambiente de testing antes aplicar el código al trabajo final.
Solución:
Si desea verificar si el usuario hizo clic en el I'm not a robot
casilla de verificación, puede utilizar la .getResponse()
función proporcionada por la API reCaptcha.
Devolverá un vacío string en caso de que el Usuario no se autovalidara, algo como esto:
if (grecaptcha.getResponse() == "")
alert("You can't proceed!");
else
alert("Thank you");
En caso de que el Usuario se haya validado a sí mismo, la respuesta será muy larga string.
Puede encontrar más información sobre la API en esta página: reCaptcha API de Javascript
Puede verificar la respuesta de 3 maneras según la documentación de Google reCAPTCHA:
-
g-recaptcha-response
: Una vez que el usuario marca la casilla de verificación (No soy un robot), un campo con idg-recaptcha-response
se rellena en su HTML.
Ahora puede usar el valor de este campo para saber si el usuario es un bot o no, usando las líneas mencionadas a continuación:var captchResponse = $('#g-recaptcha-response').val(); if(captchResponse.length == 0 ) //user has not yet checked the 'I am not a robot' checkbox else //user is a verified human and you are good to submit your form now
-
Antes de enviar su formulario, puede hacer una llamada de la siguiente manera:-
var isCaptchaValidated = false; var response = grecaptcha.getResponse(); if(response.length == 0) isCaptchaValidated = false; toast('Please verify that you are a Human.'); else isCaptchaValidated = true; if (isCaptchaValidated ) //you can now submit your form
-
Puede mostrar su reCAPTCHA de la siguiente manera:-
Y luego defina la función en su JavaScript, que también se puede usar para enviar su formulario.
function doSomething() alert(1);
Ahora, una vez que se marque la casilla de verificación (No soy un robot), recibirá una devolución de llamada a la devolución de llamada definida, que es
doSomething
en tu caso.
var googleResponse = jQuery('#g-recaptcha-response').val();
if (!googleResponse)
$(' Please fill up the captcha.
" ').insertAfter("#html_element");
return false;
else
return true;
Pon esto en una función. Llame a esta función al enviar… #html_element
es mi div vacío.
Reseñas y calificaciones de la guía
Si haces scroll puedes encontrar las interpretaciones de otros programadores, tú aún puedes insertar el tuyo si te apetece.