Comment recharger ReCaptcha en utilisant JavaScript?

j'ai un formulaire D'inscription avec AJAX de sorte que je veux rafraîchir L'image Recaptcha chaque fois qu'une erreur se produit (i.e. nom d'utilisateur déjà utilisé).

je cherche un code compatible avec ReCaptcha pour le recharger en JavaScript.

148
demandé sur Ahmet Alp Balkan - Google 2010-07-30 16:21:15

9 réponses

je pense que je peux répondre à ma propre question maintenant. C'est

Recaptcha.reload();

en JavaScript s'il y a déjà un Recaptcha chargé sur la fenêtre.


Edit: @SebiH a mis à jour que cette commande est maintenant:

grecaptcha.reset();
314
répondu Ahmet Alp Balkan - Google 2015-01-06 09:44:04

si vous utilisez la version 1

Recaptcha.reload();

si vous utilisez la version 2

grecaptcha.reset();
55
répondu Dasun 2015-04-07 16:00:30

ou vous pouvez simplement simuler un clic sur le bouton Rafraîchir

// If recaptcha object exists, refresh it
    if (typeof Recaptcha != "undefined") {
      jQuery('#recaptcha_reload').click();
    }
7
répondu AlxVallejo 2014-11-06 18:51:33

Important: la Version 1.0 de l'API reCAPTCHA n'est plus supportée, veuillez passer à la Version 2.0.

vous pouvez utiliser grecaptcha.reset(); pour réinitialiser le captcha.

Source: https://developers.google.com/recaptcha/docs/verify#api-request

7
répondu abhiagNitk 2016-06-03 06:27:33
grecaptcha.reset(opt_widget_id)

réinitialise le widget reCAPTCHA. Un widget id optionnel peut être passé, sinon la fonction réinitialise le premier widget créé. (de la page Web de Google)

7
répondu Kutalia 2017-01-16 09:00:44

Essayez cette

<script type="text/javascript" src="//www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>
<script type="text/javascript">
          function showRecaptcha() {
            Recaptcha.create("YOURPUBLICKEY", 'captchadiv', {
              theme: 'red',
              callback: Recaptcha.focus_response_field
            });
          }
 </script>

<div id="captchadiv"></div>

si vous appelez showRecaptcha le captchadiv sera rempli avec une nouvelle instance de recaptcha.

5
répondu Tim 2010-07-30 12:27:11

pour les utilisateurs D'AngularJS:

$window.grecaptcha.reset();
4
répondu Marcelo C. 2017-09-12 03:12:21

pour la nouvelle version de reCaptcha v2 utiliser:

grecaptcha.reset();
2
répondu Corporate purpose 2018-06-26 10:30:05

si vous utilisez New recaptcha 2.0 utilisez cette: pour le code derrière:

ScriptManager.RegisterStartupScript(this, this.GetType(), "CaptchaReload", "$.getScript(\"https://www.google.com/recaptcha/api.js\", function () {});", true);

pour javascript simple

<script>$.getScript(\"https://www.google.com/recaptcha/api.js\", function () {});</script>
0
répondu Sara Khan 2015-04-24 11:28:44