Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.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 html 5验证不适用于谷歌TCHA_Javascript_Html_Recaptcha_Invisible Recaptcha - Fatal编程技术网

Javascript html 5验证不适用于谷歌TCHA

Javascript html 5验证不适用于谷歌TCHA,javascript,html,recaptcha,invisible-recaptcha,Javascript,Html,Recaptcha,Invisible Recaptcha,早些时候,我有一个基本的HTML5表单可以正常工作,但是在我添加了google隐形的recaptcha之后。Html5验证停止工作。我经常在谷歌上冲浪,但找不到一种方法 <script> function onSubmit(token) { document.getElementById("send").submit(); } </script> <form id="send" action="process.php" method="post"> <

早些时候,我有一个基本的HTML5表单可以正常工作,但是在我添加了google隐形的recaptcha之后。Html5验证停止工作。我经常在谷歌上冲浪,但找不到一种方法

<script>
function onSubmit(token) {
document.getElementById("send").submit();
}
</script>

<form  id="send" action="process.php" method="post">
<input type="text" required name="Send" minlength="6" maxlength="16" placeholder="stackoverflow">
<button class="btn btn-primary g-recaptcha" data-sitekey="hidden" data-callback='onSubmit'>Submit</button>
</form>

提交函数(令牌){
document.getElementById(“send”).submit();
}
提交

即使未满足输入语句,它也会忽略这一点,并在没有错误消息的情况下将表单提交给用户

在此处工作正常

<?php if(isset($_POST['hiddenfield'])){
echo 'submitted';
}
?>

<script>
function onSubmit(token) {
document.getElementById("send").submit();
}
</script>

<form  id="send" action="" method="post">
<input type="hidden" name="hiddenfield">
<input type="text" required name="Send" placeholder="stackoverflow">
<button class="btn btn-primary g-recaptcha" datasitekey="blahblahblahblahblahblahblahblah" data-callback='onSubmit'>Submit</button>
</form>

提交函数(令牌){
document.getElementById(“send”).submit();
}
提交

对于recaptcha v3,您可以这样做。我解决了这个问题

<button 
                                data-sitekey="your key" 
                                data-callback='onSubmit' 
                                data-action='submit' 
                                type="submit" class="g-recaptcha btn btn-block btn-lg btn-primary mt-4">Send your message</button>
                        </div>
发送您的消息
用此更新谷歌网站提供的代码。基本上,我们是在提交表单之前手动检查表单验证状态,如果没有显示错误的话

<script>
        function onSubmit(token) {            
            var applicationForm = document.getElementById("contact-form");    
            if (applicationForm.checkValidity()) {
                document.getElementById("contact-form").submit();                
            } else {
              applicationForm.reportValidity();
            }
                    
        }
    </script>

函数onSubmit(令牌){
var applicationForm=document.getElementById(“联系人表单”);
if(applicationForm.checkValidity()){
document.getElementById(“联系人表单”).submit();
}否则{
applicationForm.reportValidity();
}
}

您是否在使用不可见的recaptcha v2??因为两个代码看起来几乎相同??