要求用户在提交表单之前点击谷歌的新验证码

2022-08-30 17:22:12

我正在使用谷歌在我的表单(HTML5)中的新验证码:https://www.google.com/recaptcha

有没有办法在提交表单之前根据需要检查和标记验证码?我想在客户端而不是服务器端验证这一点。这样,我就不必返回表单并警告用户不要为验证码输入任何内容。

我可以用来检查用户是否在recaptcha中输入任何内容的javascript?


答案 1

您可以使用 id 检查文本区域字段。您可以执行以下操作:g-recaptcha-response

$("form").submit(function(event) {

   var recaptcha = $("#g-recaptcha-response").val();
   if (recaptcha === "") {
      event.preventDefault();
      alert("Please check the recaptcha");
   }
});

希望这对您有所帮助。


答案 2

一个普通的JavaScript实现,使用Ankesh和Lammert的部分解决方案:

var form = document.getElementById('ctct-custom-form');
form.addEventListener("submit", function(event){
    if (grecaptcha.getResponse() === '') {                            
      event.preventDefault();
      alert('Please check the recaptcha');
    }
  }
, false);

表单提交侦听器代码的功劳:如何监听 javascript 中的表单提交事件?