2016-11-01 2 views
2

Ich frage mich, wie Recaptcha Client Seite validieren, wenn es mehrere auf der gleichen Seite sind. Ich fand dieses https://stackoverflow.com/a/28607943/5649602, und das ist OK, wenn ich eins habe.Validieren Sie mehrere Recaptcha (V2) auf der gleichen Seite

Aber jetzt habe ich eine in foooter der Website auf jeder Seite, und eine in einigen Registrierungsformular, so gibt es Möglichkeit für theme in der gleichen Zeit zu erscheinen.

Ich würde jede mögliche Unterordnung schätzen. Vielen Dank. :)

+1

sollte – madalinivascu

+0

kein Problem sein Wie zielspezifisches Element? Woher weiß ich, dass diese Antwort von der Überprüfung, sagen wir, Anmeldeformular und nicht Formular in Fußzeile kam? – cvetan

+0

Verwenden Sie eine andere Klasse für jeden Recaptcha – madalinivascu

Antwort

6

einfachste Weg, wie viel g-Captcha validieren

Erster zu validieren Sie api.js vor </head> Tag nach unten

<script src="https://www.google.com/recaptcha/api.js?onload=CaptchaCallback&render=explicit"></script> 

Fügen Sie diesen Code enthalten in Ihr HTML

<div class="g-recaptcha-contact" data-sitekey="Your Site Key" id="RecaptchaField2"></div> 
<input type="hidden" class="hiddenRecaptcha" name="ct_hiddenRecaptcha" id="ct_hiddenRecaptcha"> 

<div class="g-recaptcha-quote" data-sitekey="Your Site Key" id="RecaptchaField1"></div> 
<input type="hidden" class="hiddenRecaptcha" name="qt_hiddenRecaptcha" id="qt_hiddenRecaptcha"> 

Nachdem Sie diesen Code in der Fußzeile mit <script> Tag für Entwickler

var CaptchaCallback = function() { 
    var widgetId1; 
    var widgetId2; 
    widgetId1 = grecaptcha.render('RecaptchaField1', {'sitekey' : 'Your Site Key', 'callback' : correctCaptcha_quote}); 
    widgetId2 = grecaptcha.render('RecaptchaField2', {'sitekey' : 'Your Site Key', 'callback' : correctCaptcha_contact}); 
}; 
var correctCaptcha_quote = function(response) { 
    $("#qt_hiddenRecaptcha").val(response); 
}; 
var correctCaptcha_contact = function(response) { 
    $("#ct_hiddenRecaptcha").val(response); 
}; 

und Last einfachen Schritt hinzufügen Jquery Validierung hinzufügen, wie pro unten

$("#form_id").validate({ 
    ignore: [], 
    rules: { 
     ct_hiddenRecaptcha: { required: true, }, 
     qt_hiddenRecaptcha: { required: true, }, 
    }, 
}); 
Verwandte Themen