Google Recaptcha 启用禁用的提交按钮
Google Recaptcha enables disabled submit button
我正在使用 reCaptcha v2 invisible
。我有一个带有 disabled
提交按钮的简单表单。 Google reCAPTCHA 正在启用我禁用的按钮。
<script src="https://www.google.com/recaptcha/api.js"></script>
<form action="/action_page.php" id="referral-form">
First name:
<br>
<input type="text" name="firstname">
<br>
Last name:
<br>
<input type="text" name="lastname">
<br>
<input type="submit" id="form-submit-btn" disabled="disabled" class="g-recaptcha" data-callback='onSubmit' data-sitekey="***************" value="Submit">
</form>
function onSubmit() {
if (grecaptcha.getResponse() !== "") {
$('#referral-form').submit();
}
grecaptcha.reset();
}
当我删除 class="g-recaptcha"
按钮时,该按钮被正确禁用。
正如我在上面的评论中所说,您可以在呈现 Invisible Recaptcha 时使用回调。
试试这个代码,如果有效请告诉我:
<!doctype html>
<html>
<head>
<script>
var onSubmit = function(token) {
console.log(token);
// You can check token here and decide what to do
};
var onloadCallback = function() {
grecaptcha.render('form-submit-btn', {
'sitekey' : '***************',
'callback' : onSubmit
});
document.getElementById('form-submit-btn').disabled = true;
};
/////
// code to enable your button when you have content in the inputs
/////
</script>
</head>
<body>
<form action="/action_page.php" id="referral-form">
First name:
<br>
<input type="text" name="firstname">
<br>
Last name:
<br>
<input type="text" name="lastname">
<br>
<input type="submit" id="form-submit-btn" class="g-recaptcha" value="Submit">
</form>
<script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script>
</body>
</html>
我基于您的代码和 this example Google Recaptcha 文档中的此示例。
为了解决这个问题,我已经升级到 reCaptcha v3,非常容易集成,现在我将提交从
我正在使用 reCaptcha v2 invisible
。我有一个带有 disabled
提交按钮的简单表单。 Google reCAPTCHA 正在启用我禁用的按钮。
<script src="https://www.google.com/recaptcha/api.js"></script>
<form action="/action_page.php" id="referral-form">
First name:
<br>
<input type="text" name="firstname">
<br>
Last name:
<br>
<input type="text" name="lastname">
<br>
<input type="submit" id="form-submit-btn" disabled="disabled" class="g-recaptcha" data-callback='onSubmit' data-sitekey="***************" value="Submit">
</form>
function onSubmit() {
if (grecaptcha.getResponse() !== "") {
$('#referral-form').submit();
}
grecaptcha.reset();
}
当我删除 class="g-recaptcha"
按钮时,该按钮被正确禁用。
正如我在上面的评论中所说,您可以在呈现 Invisible Recaptcha 时使用回调。
试试这个代码,如果有效请告诉我:
<!doctype html>
<html>
<head>
<script>
var onSubmit = function(token) {
console.log(token);
// You can check token here and decide what to do
};
var onloadCallback = function() {
grecaptcha.render('form-submit-btn', {
'sitekey' : '***************',
'callback' : onSubmit
});
document.getElementById('form-submit-btn').disabled = true;
};
/////
// code to enable your button when you have content in the inputs
/////
</script>
</head>
<body>
<form action="/action_page.php" id="referral-form">
First name:
<br>
<input type="text" name="firstname">
<br>
Last name:
<br>
<input type="text" name="lastname">
<br>
<input type="submit" id="form-submit-btn" class="g-recaptcha" value="Submit">
</form>
<script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script>
</body>
</html>
我基于您的代码和 this example Google Recaptcha 文档中的此示例。
为了解决这个问题,我已经升级到 reCaptcha v3,非常容易集成,现在我将提交从