在使用reCaptcha时,我遇到了一个问题.在代码中,使用AJAX提交表单.在提交之前,我需要检查字段是否已填写.如果字段未填写,则不应提交.
在这种情况下,如果未填写文本字段,则会发出警报.
问题是在拒绝无效帖子后,提交按钮停止工作2到3分钟,并且reCaptcha没有给出错误.经过一段时间后,reCaptcha再次开始工作并提交按钮.
Javascripts:
function sendData(){ console.log('send data - '); // --> works //send datas: $("#contact-form").submit(); }; $('#contact-form').on("submit", function() { console.log('clicked submit'); // --> works name = $('#name').val().replace(/<|>/g, ""), // prevent xss email = $('#email').val().replace(/<|>/g, ""), msg = $('#message').val().replace(/<|>/g, ""); if (name == '' || email == '' || msg == '') { alert("Please fill all areas !"); } else { console.log('captcha response: ' + grecaptcha.getResponse()); // --> captcha response: // ajax to the php file to send the mail $.ajax({ type: "POST", url: "SaveContact.php", data: "email=" + email + "&name=" + name + "&msg=" + msg + "&g-recaptcha-response=" + grecaptcha.getResponse() }).done(function(status) { if (status == "ok") { // clear the form fields $('#name').val(''); $('#email').val(''); $('#message').val(''); } }); }});
小智.. 5
根据文档,您还可以调用grecaptcha.reset(opt_widget_id);
,其中opt_widget_id
是可选的,默认为创建的第一个Recaptcha小部件。
根据文档,您还可以调用grecaptcha.reset(opt_widget_id);
,其中opt_widget_id
是可选的,默认为创建的第一个Recaptcha小部件。