google captcha:重置后不会呈现验证码字段

时间:2016-09-15 09:07:43

标签: jquery recaptcha

我正在使用https://developers.google.com/recaptcha/docs/display#auto_render所述的谷歌验证码。 我有一个通过ajax发送的表单。单击我的“发送”按钮后,我发送了我的请求。 如果表单有错误,表单是新加载的,我也希望验证码是新加载的。但是,当我创建grecaptcha.reset();时,验证码字段不再显示。

我已经尝试过用

创建捕获字段
grecaptcha.render('recaptcha', {
        'sitekey' : 'MYKEY'
    });

然后,在重新加载带有此捕获的表单后,我做了

var captchawidget = grecaptcha.render('recaptcha', {
                'sitekey' : 'MYKEY'
            });

            grecaptcha.reset(captchawidget);

然后加载捕获,但再次单击我的发送按钮后,出现错误:

TypeError: ge(...) is null

...valid ReCAPTCHA client id: "+a);return ge(Yp(b.id)).value},$p=function(){return!...

任何人都可以帮我吗?谢谢!

1 个答案:

答案 0 :(得分:0)

您需要传递一个小部件ID才能再次渲染

var widgetId = grecaptcha.render(container);
grecaptcha.reset(widgetId);