मेरे पास AJAX के साथ एक साइनअप फॉर्म है ताकि मैं कभी भी रिकैप्चा इमेज को रिफ्रेश कर सकूं।
मैं जावास्क्रिप्ट का उपयोग करके इसे पुनः लोड करने के लिए ReCaptcha के साथ संगत कोड की तलाश कर रहा हूं।
मेरे पास AJAX के साथ एक साइनअप फॉर्म है ताकि मैं कभी भी रिकैप्चा इमेज को रिफ्रेश कर सकूं।
मैं जावास्क्रिप्ट का उपयोग करके इसे पुनः लोड करने के लिए ReCaptcha के साथ संगत कोड की तलाश कर रहा हूं।
जवाबों:
महत्वपूर्ण: reCAPTCHA API का संस्करण 1.0 अब समर्थित नहीं है, कृपया संस्करण 2.0 में अपग्रेड करें।
आप grecaptcha.reset () का उपयोग कर सकते हैं ; कैप्चा रीसेट करने के लिए।
स्रोत: https://developers.google.com/recaptcha/docs/verify#api-request
ReCaptcha v2 के लिए, उपयोग करें:
grecaptcha.reset();
यदि आप reCaptcha v1 का उपयोग कर रहे हैं ( शायद नहीं ):
Recaptcha.reload();
यदि वहाँ पहले से ही लोड किया हुआ रेकप्टा है तो यह करेगा window
।
(नीचे सेबी की टिप्पणी पर आधारित अपडेट।)
grecaptcha.reset();
( डॉक्यूमेंटेशन )
grecaptcha.reset();
अपनी प्रतिक्रिया क्षुधा के लिए यह प्रयोग कर रहा हूं, और यह पूरी तरह से काम करता है
if (window.grecaptcha) grecaptcha.reset();
यदि आप संस्करण 1 का उपयोग कर रहे हैं
Recaptcha.reload();
यदि आप संस्करण 2 का उपयोग कर रहे हैं
grecaptcha.reset();
grecaptcha.reset(opt_widget_id)
ReCAPTCHA विजेट को रीसेट करता है। एक वैकल्पिक विजेट आईडी पारित किया जा सकता है, अन्यथा फ़ंक्शन पहले बनाए गए विजेट को रीसेट करता है। (Google के वेब पेज से)
इसे इस्तेमाल करे
<script type="text/javascript" src="//www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>
<script type="text/javascript">
function showRecaptcha() {
Recaptcha.create("YOURPUBLICKEY", 'captchadiv', {
theme: 'red',
callback: Recaptcha.focus_response_field
});
}
</script>
<div id="captchadiv"></div>
यदि आप showRecaptcha को कॉल करते हैं, तो कैप्चाडीव को एक नए रिकैप्चा उदाहरण के साथ आबाद किया जाएगा।
या आप ताज़ा बटन पर एक क्लिक का अनुकरण कर सकते हैं
// If recaptcha object exists, refresh it
if (typeof Recaptcha != "undefined") {
jQuery('#recaptcha_reload').click();
}
Recaptcha
और grecaptcha
मेरे पृष्ठ पर दोनों अपरिभाषित हैं। इसने मेरे लिए काम किया, एक मामूली संशोधन के साथ:if( $("#recaptcha_reload").length > 0 ){ ....
AngularJS उपयोगकर्ताओं के लिए:
$window.grecaptcha.reset();
ReCaptcha v2 उपयोग के नए संस्करण के लिए:
grecaptcha.reset();
यदि आप नए recaptcha 2.0 का उपयोग कर रहे हैं तो इसका उपयोग करें: पीछे के कोड के लिए:
ScriptManager.RegisterStartupScript(this, this.GetType(), "CaptchaReload", "$.getScript(\"https://www.google.com/recaptcha/api.js\", function () {});", true);
सरल जावास्क्रिप्ट के लिए
<script>$.getScript(\"https://www.google.com/recaptcha/api.js\", function () {});</script>