दिलचस्प पोस्ट
मल्टी थ्रेडिंग के साथ अस्थिरता का उपयोग कब किया जाए? स्विंग के साथ कैनवास कैसे बनाया जाए? एक बहुत बड़ी तालिका में पंक्तियों की सही संख्या को गिनने का सबसे तेज़ तरीका है? जहां जावाबेन्स का प्रयोग किया जाता है? आईपी ​​रेंज की गणना कैसे करें जब आईपी पता और नेटमास्क दिया जाता है? सेवा से एंड्रॉइड अपडेट गतिविधि यूआई System.currentTimeMillis बनाम System.nanoTime एक बाश स्क्रिप्ट का उपयोग करके फ़ाइल नामों में रिक्त स्थान को कैसे बदलें क्या यह PHP में ओवरलोड ऑपरेटरों के लिए संभव है? नोडज एक्सप्रेस और जो मैं उम्मीद करता हूं वह नहीं करता अजाक्स फ़ंक्शन ऑनबीयरइनलोड करने के लिए कैसे करें? कोको त्रुटि 3840 JSON का उपयोग कर (आईओएस) स्ट्रिंग क्लास को जावा में अंतिम क्यों घोषित किया जाता है? एंड्रॉइड सेविंग ने एसडी कार्ड पर बिटमैप को निर्देशिका में बनाया क्या 'अस्थिर' कीवर्ड में एक कंसोल फंक्शन द्वारा संशोधित होने की अनुमति देने के अलावा कोई अन्य उद्देश्य है?

HTML5 ईमेल सत्यापन

यह कहा जाता है "एचटीएमएल 5 के साथ, हमें किसी भी जेएस या सर्वर साइड कोड की जरूरत नहीं है, यह देखने के लिए कि उपयोगकर्ता का इनपुट मान्य ईमेल या यूआरएल पता है"

किसी उपयोगकर्ता के प्रवेश के बाद मैं ईमेल कैसे सत्यापित कर सकता हूं? और जेएस के बिना संदेश प्रदर्शित करने के लिए यदि उपयोगकर्ता अपना / उसकी ईमेल पते का गलत रूप दर्ज करता है

<input type="email" pattern="[^ @]*@[^ @]*" placeholder="Enter your email"> <input type="submit" value="Submit"> 

वेब के समाधान से एकत्रित समाधान "HTML5 ईमेल सत्यापन"

एचटीएमएल 5 में आप ऐसा कर सकते हैं:

 <form> <input type="email" placeholder="Enter your email"> <input type="submit" value="Submit"> </form> 

और जब उपयोगकर्ता सबमिट करें दबाएं, तो यह स्वतः एक त्रुटि संदेश दिखाता है जैसे:

त्रुटि संदेश

http://Www.w3.org साइट के input type=email पृष्ठ नोट करते हैं कि एक ईमेल पता किसी भी स्ट्रिंग है जो निम्नलिखित नियमित अभिव्यक्ति से मेल खाता है:

 /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ 

Regex पैटर्न से मिलान करने के लिए मूल्य की आवश्यकता के लिए required विशेषता और एक pattern विशेषता का उपयोग करें

 <input type="text" pattern="/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/" required > 

[a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,} somemail@email.com [a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,} somemail@email.com [a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,} somemail@email.com somemail@email.com.vn / somemail@email.com.vn

यह उदाहरण मैं अपने सभी ईमेल ईमेल इनपुट के लिए उपयोग करता हूं I यह उदाहरण ASP.NET है, लेकिन किसी भी पर लागू होता है:

 <asp:TextBox runat="server" class="form-control" placeholder="Contact's email" name="contact_email" ID="contact_email" title="Contact's email (format: xxx@xxx.xxx)" type="email" TextMode="Email" validate="required:true" pattern="[a-zA-Z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*" > </asp:TextBox> 

HTML5 अभी भी आवश्यक नहीं होने पर पैटर्न का उपयोग कर पुष्टि करता है अभी तक कोई नहीं मिला जो कि एक झूठी सकारात्मक थी

यह निम्न HTML के रूप में प्रस्तुत करता है:

 <input class="form-control" placeholder="Contact's email" name="contact_email" id="contact_email" type="email" title="Contact's email (format: xxx@xxx.xxx)" pattern="[a-zA-Z0-9!#$%&amp;'*+\/=?^_`{|}~.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*"> 

मुझे पता है कि आप जावास्क्रिप्ट समाधान के बाद नहीं हैं लेकिन कुछ चीजें हैं जैसे कस्टमाइज किया गया सत्यापन संदेश, जो कि मेरे अनुभव से, केवल जेएस का उपयोग किया जा सकता है।

इसके अलावा, जेएस प्रयोग करके, आप गतिशील रूप से हर एक इनपुट फ़ील्ड को संशोधित करने के बजाय आपकी साइट के भीतर टाइप इमेज के सभी इनपुट क्षेत्रों में सत्यापन जोड़ सकते हैं।

 var validations ={ email: [/^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/, 'Please enter a valid email address'] }; $(document).ready(function(){ // Check all the input fields of type email. This function will handle all the email addresses validations $("input[type=email]").change( function(){ // Set the regular expression to validate the email validation = new RegExp(validations['email'][0]); // validate the email value against the regular expression if (!validation.test(this.value)){ // If the validation fails then we show the custom error message this.setCustomValidity(validations['email'][1]); return false; } else { // This is really important. If the validation is successful you need to reset the custom error message this.setCustomValidity(''); } }); }) 
 document.getElementById("email").validity.valid 

ऐसा लगता है कि जब फ़ील्ड या तो रिक्त या मान्य है इसमें कुछ अन्य दिलचस्प झंडे भी हैं:

यहां छवि विवरण दर्ज करें

Chrome में परीक्षण किया गया

एचटीएमएल 5 विशेषता "पैटर्न" का उपयोग करके ईमेल को सही ढंग से मान्य करना बहुत मुश्किल है यदि आप "पैटर्न" का उपयोग नहीं करते हैं, तो किसी पर कार्रवाई की जाएगी। जो मान्य ईमेल नहीं है

pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" प्रारूप को someone@email.com होना चाहिए, हालांकि अगर प्रेषक के पास कोई ऐसा कोई प्रारूप होता है जैसे someone@email.net.au (या समान) इसे ठीक करने के लिए मान्य नहीं किया जाएगा pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" डाल सकता है pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" यह मान्य होगा" .com.au या .net.au या समान रूप से

हालांकि इसका उपयोग करते हुए, यह valid@email.com को मान्य करने की अनुमति नहीं देगा। इसलिए जहां तक ​​ईमेल पते सत्यापित करने के लिए बस HTML5 का इस्तेमाल किया जा रहा है, अभी भी हमारे साथ पूरी तरह से नहीं है। इसे पूरा करने के लिए आप ऐसा कुछ उपयोग करेंगे:

 <form> <input id="email" type="text" name="email" pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" required placeholder="Enter you Email"> <br> <input type="submit" value="Submit The Form"> </form> 

या:

 <form> <input id="email" type="text" name="email" pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" required placeholder="Enter you Email"> <br> <input type="submit" value="Submit The Form"> </form> 

हालांकि, मुझे पता नहीं है कि एचटीएमएल पैटर्न एट्रिब्यूट का इस्तेमाल करते हुए ईमेल पतों के दोनों या सभी संस्करणों को मान्य कैसे किया जाए।