如何检查是否填写了新的(第2版)recaptcha 形式?
问题是这个验证码在iframe内部,不允许从中读取ID。
要清除问题 - 我不想验证验证码,只是在我提交表单之前检查它是否已填满。
修改:
我在bootstrap模式中有一个表单,如果我将它提交以检查验证码服务器端,那么我将不得不将用户重定向到他正在使用的页面并再次显示错误通知模式。
在我看来,这将是一个相当糟糕的用户体验。
答案 0 :(得分:4)
您最好的选择是使用recaptcha API中的getResponse
:
grecaptcha.getResponse(opt_widget_id)
opt_widget_id
是可选的,是从render
调用返回的id,但是,如果缺少,它将引用第一个创建的recaptcha小部件(如果你只有一个小部件就足够了)。
答案 1 :(得分:0)
var captchaFilled = false;
var formValidator = function(data){
if(data.length>10){
captchaFilled = true;
}
}
$('#form1').on('submit', function(e) {
if(captchaFilled===false){
e.preventDefault();
alert("verify yourself");
return false;
}
else{
alert("ok");
return true;
}
});
grecaptcha.render('captchadiv', {
'sitekey' : '************',
'callback' : formValidator
});