我已经在单页中实现了两个recaptcha,但只有一个是recaptcha正在运行
我的代码是针对验证码1
<div class="resumator-label resumator-resume-text" id="resumator-recaptcha_forward-label">Human Check*</div>
<div class="resumator-input" id="resumator-recaptcha_forward-field">
<div id="div_error_resumator-forward-recaptcha-value" class="dv_error"><span>Please enter the text:</span></div><script type="text/javascript" src="//www.google.com/recaptcha/api/challenge?k=6Ld99tsSAAAAAIy-Zv3YKxCOefk2IXELOBVNhM7Y"></script>
<noscript>
<iframe src="//www.google.com/recaptcha/api/noscript?k=6Ld99tsSAAAAAIy-Zv3YKxCOefk2IXELOBVNhM7Y" height="300" width="500" frameborder="0"></iframe><br/>
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
<input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
</noscript>
</div>
其他验证码的代码
<div class="resumator-field-wrapper resumator-resume-text" id="resumator-recaptcha">
<div class="resumator-label resumator-resume-text" id="resumator-recaptcha-label">Human Check*</div>
<div class="resumator-input" id="resumator-recaptcha-field">
<script type="text/javascript" src="//www.google.com/recaptcha/api/challenge?k=6Ld99tsSAAAAAIy-Zv3YKxCOefk2IXELOBVNhM7Y"></script>
<noscript>
<iframe src="//www.google.com/recaptcha/api/noscript?k=6Ld99tsSAAAAAIy-Zv3YKxCOefk2IXELOBVNhM7Y" height="300" width="500" frameborder="0"></iframe><br/>
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
<input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
</noscript>
</div>
</div>
我也使用克隆工作正常
//复制我们的reCapcha
$('#resumator-recaptcha-label').html($('#resumator-recaptcha_forward').clone(true,true));
克隆验证码中的问题,其重新加载验证码和其他链接不适用于新的克隆验证码
答案 0 :(得分:5)
你可以尝试在第二个recaptcha加载器按钮中添加新类,然后用click事件绑定该类的事件并再次克隆你的节点,并使用setTimeout函数,它将等待重绘验证码 希望这会对你有所帮助
setTimeout(function() {
$( "#resumator-recaptcha #recaptcha_widget_div #recaptcha_reload_btn " ).addClass("reload_captcha");
$(document).on('click', '.reload_captcha', function(e){
$('#resumator-recaptcha-label').html($('#resumator-recaptcha_forward').clone(true,true));
$( "#resumator-recaptcha #recaptcha_widget_div #recaptcha_reload_btn " ).addClass("reload_captcha");
});
}, 2000);