Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用ajax实现tcha同步_Javascript_Jquery_Ajax_Forms_Recaptcha - Fatal编程技术网

Javascript 用ajax实现tcha同步

Javascript 用ajax实现tcha同步,javascript,jquery,ajax,forms,recaptcha,Javascript,Jquery,Ajax,Forms,Recaptcha,因此,我试图找出如何从Recaptcha获取令牌或有效响应,然后运行ajax调用。有人知道我如何同步完成这项工作吗 当用户单击“提交”时,流程将是: 能够通过所需的属性和模式验证表单字段 获取Recaptcha令牌或响应 如果Recaptcha响应良好,则运行Ajax 提交函数(令牌){ grecaptcha.execute() var response=grecaptcha.getResponse(); 返回响应长度; } $(“#联系方式”)。提交(功能(事件){ event.preven

因此,我试图找出如何从Recaptcha获取令牌或有效响应,然后运行ajax调用。有人知道我如何同步完成这项工作吗

当用户单击“提交”时,流程将是:

  • 能够通过所需的属性和模式验证表单字段
  • 获取Recaptcha令牌或响应
  • 如果Recaptcha响应良好,则运行Ajax
  • 提交函数(令牌){
    grecaptcha.execute()
    var response=grecaptcha.getResponse();
    返回响应长度;
    }
    $(“#联系方式”)。提交(功能(事件){
    event.preventDefault();
    if(onSubmit()){
    jQuery.ajax({
    url:“/ipostal office/send email.php”,
    数据:$(“#联系方式”).serialize(),
    类型:“POST”,
    完成:功能(数据){
    console.log(data.responseText);
    },
    成功:功能(数据){
    //控制台日志(数据);
    $(“#联系方式”).fadeOut();
    $('success').fadeIn();
    },
    错误:函数(数据){
    console.log(data.responseText);
    $(“#错误”).fadeIn();
    $(“#联系方式”).fadeOut();
    }
    });
    }
    });
    
    #表单div{
    边界半径:4px;
    边框:1px实心#e8e8e8;
    填充:1rem 1rem 1.5rem 1rem;
    }
    #表格分区隐藏{
    显示:无;
    文本对齐:居中;
    }
    
    联系我们了解更多信息
    您的邮件已成功发送

    出现问题,
    请尝试刷新并再次提交表单

    名字* 标题 公司* 地址 电子邮件* 电话 消息 提交
    如果您以
    submit
    事件处理程序的形式调用
    grecaptcha.execute()
    ,并将AJAX调用移动到
    onSubmit
    函数中,则此操作应该有效

    表单提交处理程序将阻止实际提交并启动异步reCAPTCHA。当reCAPTCHA响应可用时,它将在表单中插入一个隐藏的输入字段,并调用onSubmit

    提交函数(令牌){
    //通过AJAX提交
    警报($('#联系人表单').serialize());
    }
    $('form')。提交(函数(e){
    event.preventDefault();
    grecaptcha.execute();
    });
    
    
    提交