小编13h*_*h50的帖子

使用jQuery ajax进行隐形ReCaptcha

我试图使用jQuery和"ajax"请求在表单中实现最新的ReCaptcha(又名"隐形"ReCaptcha).
ReCaptcha文档:https://developers.google.com/recaptcha/docs/invisible

我的表格:

<form id="myForm" >
    <input type="email" name="email" /><br />
    <input type="password" name="password" /><br/>
    <!--<input type="submit" value="log in" />-->
    <button class="g-recaptcha" data-sitekey="6LdK..." data-callback="onSubmit">log in</button>
</form>
<div id="status"></div>
Run Code Online (Sandbox Code Playgroud)

我的javascript(jQuery):

<script>

    function onSubmit(token){
        document.getElementById("myForm").submit();
    }

    $(document).ready(function(){

        $("#myForm").submit(function(event){
            event.preventDefault();
            var datas = $("#myForm").serialize();
            $.ajax({
                type: "POST",
                url: "test.php",
                data: datas,
                dataType: "json",
                    beforeSend: function(){
                        $("#status").html("logging in...");
                    },
                    success: function(response){
                        $("#status").html(response.text);
                        if(response.type=="success"){
                            window.location.replace("/myaccount");
                        }
                    },
                    error: function(){
                        $("#status").html("Failed.");
                    }
            });
        });

    });
</script>
Run Code Online (Sandbox Code Playgroud)

ReCaptcha需要设置一个"数据回调",我不知道如何绑定我已经存在的".submit(function(event)"函数.
我的"onSubmit()"技巧不起作用,它忽略了"ajax" "并刷新页面.

如何在"datas"变量中发送"g-recaptcha-response"值将其发送到test.php?

javascript ajax jquery recaptcha invisible-recaptcha

9
推荐指数
1
解决办法
1万
查看次数