संपादित करें: किसी ने स्पष्ट किया है कि आप डोम के लिए "वैध" "अमान्य" विशेषताओं की तलाश में हैं।
मैं dom_object.setAttribute("isvalid", "true")
का उपयोग करके प्रत्येक टैग में विशेषताओं को जोड़ूंगा। आपके पास एक केंद्रीय सत्यापन फ़ंक्शन भी हो सकता है जो प्रत्येक बार इन विशेषताओं को अपडेट करता है (और प्रत्येक बार dom_object.getAttribute("isvalid")
का उपयोग करें)।
जब भी कोई तत्व फोकस खो देता है, या जब चाहें आप इस समारोह को चला सकते हैं।
बिल्कुल सुरुचिपूर्ण नहीं है, लेकिन दुर्भाग्यवश जावास्क्रिप्ट और HTML5 के साथ अब "छद्म" समर्थन नहीं है।
यदि मैं आपका प्रश्न समझता हूं, तो आप जावास्क्रिप्ट के साथ सत्यापन कर सकते हैं। हालांकि, चेतावनी दी जानी चाहिए कि क्लाइंट साइड सत्यापन को बाधित करना बहुत आसान है, खासकर जावास्क्रिप्ट सत्यापन। आपको कभी भी ग्राहक डेटा पर भरोसा नहीं करना चाहिए और हमेशा सर्वर की तरफ जांचना चाहिए।
उदाहरण के लिए, मैं स्रोत कोड का निरीक्षण करके आसानी से तत्व आईडी पा सकता हूं, फिर अधिकतम मान बदलने के लिए document.getElementById('some_id').setAttribute('max', new_number)
करें (यह आपके लिंक से प्रविष्टियों में से एक था)।
ऐसा करने के कई तरीके हैं, इसलिए मैं आपको सामान्य मुहावरे देने की कोशिश करूंगा।
आप document.getElementById('form_element_id').value
करके मूल्य (सुनिश्चित करें कि आप प्रपत्र एक name
जो सर्वर के लिए भेजा जाता है, और एक id
जो जावास्क्रिप्ट द्वारा प्रयोग किया जाता है बनाने के) प्राप्त कर सकते हैं। Textareas के लिए, आप .innerHTML
का उपयोग कर सकते हैं।
फिर आपके पास एक चर में मान है, इसे जांचने के कई तरीके हैं।
उदाहरण के लिए, आप if (parseInt(my_value) < 0) //error
कर सकते हैं। आप नियमित अभिव्यक्तियों का भी उपयोग कर सकते हैं, मैं इसे समझाऊंगा लेकिन आप यहां http://www.w3schools.com/jsref/jsref_obj_regexp.asp शुरू कर सकते हैं। मुझे पता है कि w3schools सबसे अच्छा स्रोत नहीं है लेकिन मुझे यह शुरू करने के लिए एक ठीक जगह मिलती है।
अब सत्यापन भाग के लिए: onsubmit="return validateForm()
अपने फॉर्म टैग में जोड़ें जहां validateForm() वह कार्य है जो सभी जांच करता है। और फ़ंक्शन केवल true
लौटाता है यदि वैध और false
अन्यथा। यह डिफ़ॉल्ट सत्यापन फ़ंक्शन (जो डिफ़ॉल्ट रूप से कुछ भी नहीं करता है) को ओवरराइड करता है।
तो उपरोक्त उदाहरण में, //error
को return false
द्वारा प्रतिस्थापित किया जाएगा। आप अन्य चीजें भी कर सकते हैं; जैसे त्रुटि को चेतावनी दें तो झूठी वापसी करें। तुम भी,
बेशक अगर आप की जाँच नहीं करना चाहते हैं (यदि यह आपके द्वारा "एक इनपुट फ़ील्ड जावास्क्रिप्ट से अमान्य के रूप में/वैध निशान" क्या मतलब है यकीन नहीं) अमान्य फ़ील्ड उजागर करने के लिए जावास्क्रिप्ट इस्तेमाल कर सकते हैं यदि कुछ निश्चित हो जाते हैं तो सभी फ़ील्ड आपको केवल सत्य वापस करना होगा। दोबारा, आपको इस पर भरोसा नहीं करना चाहिए, लेकिन यदि आप केवल औसत लोगों को रोकने के लिए बाहर हैं तो यह एक आसान समाधान है।
आप हमेशा "अमान्य" वर्ग के साथ डबल-अप कर सकते हैं, लेकिन यह सीखना वाकई दिलचस्प होगा कि एक बेहतर तरीका है। – Pointy
हाँ, ज़ाहिर है, लेकिन यह उबाऊ होगा;) – Svish