Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.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 如何获取recaptcha值以便在条件检查中使用_Javascript_Jquery_Recaptcha - Fatal编程技术网

Javascript 如何获取recaptcha值以便在条件检查中使用

Javascript 如何获取recaptcha值以便在条件检查中使用,javascript,jquery,recaptcha,Javascript,Jquery,Recaptcha,在我的网站中添加recaptcha之前,我有一个表单,用于用户将所有用户输入发布到我的数据库中。但是,如果有一个字段仍然为空或值为0,我就禁用了submit按钮。我使用jQuery完成了这项工作 我尝试过使用val()方法来捕获recaptcha valeu,但似乎不起作用 这是我的jQuery,用于在检查所有字段后启用或禁用提交: $('#identity-next').attr('disabled', true); //disable the button function checkFi

在我的网站中添加recaptcha之前,我有一个表单,用于用户将所有用户输入发布到我的数据库中。但是,如果有一个字段仍然为空或值为0,我就禁用了submit按钮。我使用jQuery完成了这项工作

我尝试过使用val()方法来捕获recaptcha valeu,但似乎不起作用

这是我的jQuery,用于在检查所有字段后启用或禁用提交:

$('#identity-next').attr('disabled', true); //disable the button
function checkFilled() {
    $('form').on('keyup change', function () {
        if ($(name).val() != "" 
         && $(birth_place).val() != 0 
         && $(birth_date).val() != "" 
         && $(email).val() != "" 
         && $(phone_number).val() != "" 
         && $(address_province).val() != 0 
         && $(address_regency).val() != 0 
         && $(address_district).val() != 0 
         && $(specify_address).val() != 0 
         && $(captcha).val() != "") // the one that's not working { 
            $('#identity-next').attr('disabled', false); return true;
        } 
        else { 
            $('#identity-next').attr('disabled', true); 
            return false; 
        }
    }); 
}

checkFilled() //call the function
这是我的验证码组:

<div id="captcha" name="g-recaptcha" class="g-recaptcha" 
     data-sitekey="########################">
</div>   

{!! NoCaptcha::renderJs() !!}

<span class="text-danger">{{ $errors->first('g-recaptcha-response') }} 
</span>

{!!NoCaptcha::renderJs()!!}
{{$errors->first('g-recaptcha-response')}
因此,我希望我的jquery函数能够处理相同的功能,以便在所有字段(包括我的recaptcha)都不为空时启用submit按钮,我使用的是recaptcha V2 btw。在这种情况下,我的按钮将保持禁用状态,因为captcha根本不返回值(?)


向你问好

您的问题的解决方案是:

if($("#g-recaptcha-response").val()!="") {
    //show button
}

您使用的是什么reCAPTCHA版本?我看到它是V2版本。我可以知道&&
$(captcha).val()中变量
captcha
的值是多少吗“”)
?它不起作用的一个原因是,您在该行上放置了一条注释,这反过来又使
if
语句的左括号也变成了注释<代码>&&$(验证码).val()!=“”)/不起作用的那个{我在这个网站的问题中添加了评论,而不是在我的实际代码中。好的,请看下面我的回答。你能解释一下这个#g-recaptcha-response从哪里来吗?代码从你这边起作用吗?顺便说一句,这是谷歌服务器的响应。单击“我不是机器人”复选框和/或完成后续检查会发出请求是的,当然,但是如果你看到那段代码,你试图从和ID中获取值,称为g-recaptcha-response,但是在我的html DOM中,没有一个ID称为g-recaptcha-response。所以我在这里很困惑,如果ID itslef不存在,你想如何获取值。顺便说一句,我还没有尝试过你的解决方案,可能在以后完成我的jobg recaptcha响应对您不可见,因为它是作为recaptcha插件初始化的一部分生成的。我想您只需测试一下即可。好的,我将测试它,并肯定会告诉您结果!谢谢!