मैं इन घटनाओं का उपयोग फॉर्म इनपुट का मूल्यांकन करने के लिए कर रहा हूं, लेकिन यदि ब्राउज़र ब्राउज़र द्वारा स्वत: भर दिया गया है तो ये घटनाएं आग नहीं लगती हैं। मैं ईवेंट को ऑटोफिल पर भी कैसे आग लगा सकता हूं?Jquery .keyup .keydown .keypress ब्राउज़र ऑटोफिल का पता नहीं लगाता
उत्तर
दुर्भाग्य से ब्राउज़र ऑटोफिल का पता लगाने का कोई तरीका नहीं है। इसके बजाय, setInterval
का उपयोग करें, उदाहरण के लिए, एक काफी उच्च आवृत्ति पर फ़ंक्शन चलाने के लिए जो यह जांचता है कि मूल मान (या खाली) इनपुट मान से मेल खाता है और उस तरह प्रतिक्रिया को ट्रिगर करता है। यदि आप ऐसा नहीं करना चाहते हैं, तो शायद आप एसओएल हैं क्योंकि ब्राउजर .change
को भी ट्रिगर नहीं करेगा, और किसी भी घटना को पार-ब्राउज़र अनुपालन की संभावना नहीं है।
आप फॉर्मेशन सबमिशन पर भी सत्यापन घटनाएं चला सकते हैं, जो कि उतना ही प्रभावी होना चाहिए।
हाँ सबमिशन तकनीक के साथ समस्या यह है कि मैं सामग्री के सत्यापन के आधार पर इनपुट सीमा का रंग बदल रहा हूं, इसलिए मुझे हर बार आग लगने की घटना की आवश्यकता होती है –
आप .click()
और/या .dblclick()
ईवेंट को बाध्यकारी करके वांछित व्यवहार को नकली बना सकते हैं।
इसकी गारंटी नहीं है, लेकिन यदि आप बॉक्स से इसे चुनकर स्वत: पूर्ण "अनुमोदित" करने का निर्णय लेते हैं तो आप अतिरिक्त माउस क्लिक को छीन सकते हैं।
मुझे पता है कि यह काफी पुराना सवाल है, लेकिन मैंने कुंजीपटल फ़ंक्शन के बाद e.preventDefault() का उपयोग करके एक ही समस्या हल की।
$("#email").keyup(function (e) {
e.preventDefault();
इस तरह से अगर आप स्वत: भरण यह देखेंगे ब्राउज़र द्वारा सुझाव दर्ज साथ चयन में
। समस्या तब भी बनी हुई है जब आप सुझाव पर माउस के साथ क्लिक करते हैं, लेकिन अगर आप इसे चुनने के बाद कोई भी कुंजी दबाते हैं तो यह ठीक काम करता है।
अंतिम समाधान
मैं stackoverflow पर इस पोस्ट पाया: https://stackoverflow.com/a/24746108/3481005
और .on का उपयोग कर ("इनपुट") काम कर देता है!
$("#email").on("input",function (e) {
- 1. jQuery .keypress और .keydown .which
- 2. keyup event पर preventDefault()
- 3. जावास्क्रिप्ट ब्राउज़र का चयन पता लगाता है स्वत: पूर्ण मान
- 4. ऑटोफिल पता + Google मानचित्र API
- 5. RegularExpressionValidator खाली तारों का पता नहीं लगाता
- 6. एडीबी एंड्रॉइड डिवाइस का पता नहीं लगाता
- 7. jQuery ब्राउज़र का पता लगाने?
- 8. ब्राउज़र संस्करण जीडब्ल्यूटी का उपयोग कर पता लगाता है?
- 9. क्रोम (लेकिन फ़ायरफ़ॉक्स नहीं) ऑटोफिल jquery
- 10. jQuery एनीमेशन एनिमेटिंग अगर पता लगाता है?
- 11. JQuery Esc Keypress बाध्य
- 12. jQuery .keyup() काम नहीं कर रहा
- 13. jquery keypress event का उपयोग कर बैकस्पेस का पता क्यों नहीं लगाया जा रहा है?
- 14. jQuery/जावास्क्रिप्ट - अस्वीकार keydown घटना
- 15. KeyDown
- 16. एडीबी अचानक मेरे डिवाइस का पता नहीं लगाता
- 17. रेक डीबी: माइग्रेट नए माइग्रेशन का पता नहीं लगाता है?
- 18. वायरसहार्क मेरे इंटरफ़ेस का पता क्यों नहीं लगाता है?
- 19. AspectJ लोड टाइम वीवर सभी वर्गों का पता नहीं लगाता
- 20. ओपनसीवी समरूप चौराहे का पता लगाता है
- 21. जावा हैशैप टकराव का पता लगाता है
- 22. keydown
- 23. jQuery: पाठ बॉक्स KeyUp दो बार फायरिंग
- 24. jQuery KeyUp के लिए बाध्य केवल, ध्यान केंद्रित नहीं
- 25. मैन्युअल रूप से jquery keyup ट्रिगर करें?
- 26. $ (दस्तावेज़) काम कर .keydown नहीं
- 27. KeyUp जावास्क्रिप्ट से ब्लैकबेरी
- 28. ब्राउज़र में सहेजे गए पासवर्ड ऑटोफिल को कैसे ट्रिगर करें?
- 29. कैसे keydown
- 30. PHP पता लगाता है कि खोज दिनांक है या नहीं
मैंने कुछ समय पहले इसका शोध किया था और मुझे विश्वास नहीं है कि आप ब्राउज़र ऑटोफिल के लिए कोई ईवेंट नहीं कर सकते हैं। हालांकि किसी भी उत्तर में दिलचस्पी होगी :) –
यह जानने के बिना कि आप क्या कर रहे हैं, क्या आप एक '.change()' ईवेंट हैंडलर भी जोड़ सकते हैं? मैं ईमानदारी से यह भी सुनिश्चित नहीं कर रहा हूं कि वह घटना ब्राउज़र ऑटोफिल के साथ भी आग लगती है। – jaredhoyt
मैं जेरेड के सुझाव के रूप में '.change()' को आज़माउंगा, लेकिन यदि यह काम नहीं करता है तो आपको '.blur()' का उपयोग करना पड़ सकता है। – nnnnnn