आमतौर पर, एचटीएमएल 5 फॉर्म सत्यापन submit
ईवेंट से पहले चलाता है।अगर एचटीएमएल 5 सत्यापन पास हो गया है तो केवल reCaptcha कैसे चलाएं?
<form id="myForm">
<input type="text" name="foo" required />
<button type="submit"> Submit </button>
</form>
<script>
$("#myForm").on('submit',function(){
console.log("I'm entering the submit event handler");
});
</script>
यदि इनपुट फ़ील्ड रिक्त है साथ
, प्रस्तुत ईवेंट हैंडलर नहीं चलता है। यह केवल तब ट्रिगर किया जाएगा जब HTML5 सत्यापन (required
विशेषता, इस मामले में) पास हो गई है।
मुझे उम्मीद है कि एचटीएमएल 5 सत्यापन के बाद भी कैप्चा चलाने की उम्मीद है; मुझे कैप्चा को संकलित करने वाले उपयोगकर्ता को परेशान क्यों करना है यदि बाद में मैं उसे चेतावनी दूंगा कि फ़ील्ड गुम हैं? पहले मुझे उपयोगकर्ता को सही तरीके से सब कुछ करने के लिए मजबूर करना चाहिए, फिर सुनिश्चित करें कि यह एक मानव है और बॉट नहीं है, IMHO।
जाहिर है, reCaptcha एचटीएमएल 5 सत्यापन सुविधा को हटाने, जिस फ़ॉर्म पर संलग्न है, उस पर कुछ करता है।
उदाहरण के लिए, नवीनतम Invisible reCaptcha का उपयोग कर:
<form id="myForm">
<input type="text" name="foo" required />
<button type="submit"
class="g-recaptcha"
data-sitekey="your_site_key"
data-callback='myCallback'> Submit </button>
</form>
<script>
function myCallback(token){
$("#myForm").submit();
}
$("#myForm").on('submit',function(){
console.log("I'm entering the submit event handler");
});
</script>
प्रपत्र अपने obligatoriness के बारे में उपयोगकर्ता सूचित किए बिना खाली क्षेत्र के साथ प्रस्तुत किया जाएगा।
कोई संकेत यह क्यों काम करता है? क्या कोई तरीका है कि मैं नियंत्रण लेने से पहले HTML5 फॉर्म सत्यापन को चलाने के लिए reCaptcha को निर्देश दे सकता हूं?
बेहद साफ जवाब!अभी भी नहीं पता कि 'ऑनक्लिक' हैंडलर पर ईवेंट को अटैचमेंट करने पर 'ऑनबमिट' हैंडलर पर अपनी अंतर्निहित सत्यापन क्षमताओं को मारना क्यों चाहिए, लेकिन यह मामूली सवाल है: मेरी ज़रूरतें काफी जटिल थीं (यह पहेली का पहला टुकड़ा था) और वे अब पूर्ण काम कर रहे हैं। धन्यवाद! –
मैंने पोस्ट में आपके द्वारा पूछे गए प्रश्न के उस हिस्से के अधिक जवाब देने के लिए उत्तर संपादित किया। आपका स्वागत है! – maechler
आपकी स्पष्टीकरण के लिए धन्यवाद, बहुत सराहना की! 20 संपादनों तक पहुंचने से सावधान रहें (आप 11 पर हैं), या पोस्ट एक समुदाय विकी में परिवर्तित हो जाएगा और आप प्राप्त प्रतिष्ठा खो देंगे :) –