के रूप में एक अलग (मनमानी) तत्व को चिह्नित करें, मैं उन मानक नए पासवर्ड फ़ॉर्मों में से एक बनाने की कोशिश कर रहा हूं, जहां आप एक बार नया पासवर्ड टाइप करते हैं और फिर पुष्टि करने के लिए दूसरी बार टाइप करते हैं। मैं यह चाहते हैं ताकि एक बार आप इन क्षेत्रों से दूर धुंधला, अगर वे मेल नहीं खाते, दोनों अवैध चिह्नित किया जाएगा, इस परिदृश्य में के रूप में:एचटीएमएल 5/जेएस/jQuery: अमान्य इनपुट पर, अमान्य
- उपयोगकर्ता
#newpassword1
में पासवर्डabc
प्रवेश करती है। - उपयोगकर्ता टैब
#newpassword2
पर। - उपयोगकर्ता
def
में#newpassword2
में प्रवेश करता है। - उपयोगकर्ता टैब दूर।
- सत्यापन एक मेल नहीं खाता है, और
#newpassword1
और#newpassword2
दोनों को अमान्य के रूप में चिह्नित करता है।
मुझे पता है कि मैं एक घटना का लक्ष्य के रूप में e.target.setCustomValidity(...)
का उपयोग करके अमान्य चिह्नित कर सकते हैं, लेकिन मैं बहुत अच्छी तरह से जावास्क्रिप्ट की घटना मॉडल समझ में नहीं आता और को समझ नहीं सकता अमान्य के रूप में एक अलग तत्व चिह्नित करने के लिए कैसे घटना लक्ष्य की अपनी अमान्यता के आधार पर।
यह है कि मैं का उपयोग करने के कोशिश कर रहा हूँ (गैर काम कर रहे) कोड के प्रासंगिक अंश है:
if ($('#newpassword1').val() != $('#newpassword2').val()) {
errorMessage = "The new passwords you've entered don't match.";
$('#newpassword1, #newpassword2').setCustomValidity(errorMessage);
}
यह लगता है जैसे कि यह, काम करना चाहिए intuitively, लेकिन निश्चित रूप से ऐसा नहीं है। त्रुटि बस TypeError: $(...).setCustomValidity is not a function
है।
कृपया ध्यान दें: मैं एक क्षेत्र के लिए एक लाल अंगूठी या जो कुछ भी जोड़ने के बारे में नहीं कह रहा हूँ, मैं चाहता हूँ कि यह वास्तव में को अमान्य घोषित किया (के रूप में, अपने validity.valid
संपत्ति वापसी false
है)।
क्या ऐसा करना संभव है?
धन्यवाद!
मुझे विश्वास है कि 'setCustomValidity' एक देशी एचटीएमएल वस्तु के खिलाफ इस्तेमाल किया जाना चाहिए, न कि किसी jQuery वस्तु, .Get कोशिश'()। SetCustomValidity (errorMessage) ' – Ohgodwhy
मेरा मानना है कि' $ ('# newpassword1, # newpassword2 ') [0] .setCustomValidity (errorMessage);' – tymeJV
भी काम करेगा, आप दोनों के लिए धन्यवाद! – kine