form
'da "Google ReCAPTCHA (v2)" "gerekli" olmak nasıl bilen var mı?Google ReCAPTCHA nasıl yapılır?
Recaptcha doldurulana kadar form gönderimini kastediyorum?
benim formda ParsleyJs kullanmak, ancak div
s ile çalışmak için bir yol bulamadık ...
form
'da "Google ReCAPTCHA (v2)" "gerekli" olmak nasıl bilen var mı?Google ReCAPTCHA nasıl yapılır?
Recaptcha doldurulana kadar form gönderimini kastediyorum?
benim formda ParsleyJs kullanmak, ancak div
s ile çalışmak için bir yol bulamadık ...
Sen ReCaptcha geri tepki çağrısı doğrulamak kullanmak zorunda. Böyle bir şey: Bu gibi data-parsley-required="true"
, value = ""
ile
1.Add gizli giriş alanını: <script src='https://www.google.com/recaptcha/api.js?onload=reCaptchaCallback&render=explicit'></script>
var RC2KEY = 'sitekey',
doSubmit = false;
function reCaptchaVerify(response) {
if (response === document.querySelector('.g-recaptcha-response').value) {
doSubmit = true;
}
}
function reCaptchaExpired() {
/* do something when it expires */
}
function reCaptchaCallback() {
/* this must be in the global scope for google to get access */
grecaptcha.render('id', {
'sitekey': RC2KEY,
'callback': reCaptchaVerify,
'expired-callback': reCaptchaExpired
});
}
document.forms['form-name'].addEventListener('submit',function(e){
if (doSubmit) {
/* submit form or do something else */
}
})
ParsleyJS için olacak biraz geçici çözümü
<input id="myField" data-parsley-errors-container="#errorContainer" data-parsley-required="true" value="" type="text" style="display:none;">
2. Hata konteyneri ekle (sadece aşağıdaki veya g-recaptcha
div'inizin altında):
<span id='errorContainer'></span>
3.Add yerde sizin js kodunda bu basit işlevi:
function recaptchaCallback() {
document.getElementById('myField').value = 'nonEmpty';
}
4.Add özel fonksiyonun değeri ile nitelik data-callback
.
<div class="g-recaptcha" data-sitekey="***" data-callback="recaptchaCallback"></div>
gr -recaptcha-response ') değeri "kullanabilirsiniz" grecaptcha.getResponse() " – kunde