एचटीएमएल 5 फ़ॉर्म सत्यापन का उपयोग करते समय, बल्कि पहिया फिर से खोज करने की तुलना में अमान्य प्रस्तुतियाँ/क्षेत्रों के लिए पता लगाने के लिए, ब्राउज़र का उपयोग करने का प्रयास करें।
invalid
ईवेंट के लिए अपने फॉर्म में 'अमान्य' श्रेणी जोड़ने के लिए सुनो। 'अमान्य' श्रेणी के साथ, आप CSS3 :pseudo
चयनकर्ताओं का उपयोग करके अपने फॉर्म को स्टाइल के साथ शहर जा सकते हैं।
उदाहरण के लिए:
// where myformid is the ID of your form
var myForm = document.forms.myformid;
var checkCustomValidity = function(field, msg) {
if('setCustomValidity' in field) {
field.setCustomValidity(msg);
} else {
field.validationMessage = msg;
}
};
var validateForm = function() {
// here, we're testing the field with an ID of 'name'
checkCustomValidity(myForm.name, '');
if(myForm.name.value.length < 4) {
checkCustomValidity(
// alerts fields error message response
myForm.name, 'Please enter a valid Full Name, here.'
);
}
};
/* here, we are handling your question above, by adding an invalid
class to the form if it returns invalid. Below, you'll notice
our attached listener for a form state of invalid */
var styleInvalidForm = function() {
myForm.className = myForm.className += ' invalid';
}
myForm.addEventListener('input', validateForm, false);
myForm.addEventListener('keyup', validateForm, false);
myForm.addEventListener('invalid', styleInvalidForm, true);
लिए, बस अपने प्रपत्र शैली के रूप में आप 'अमान्य' वर्ग हम संलग्न किया है के आधार पर फिट देखते हैं।
उदाहरण के लिए:
form.invalid input:invalid,
form.invalid textarea:invalid {
background: rgba(255, 0, 0, .05);
border-color: #ff6d6d;
-webkit-box-shadow: 0 0 6px rgba(255, 0, 0, .35);
box-shadow: 0 0 6px rgba(255, 0, 0, .35);
}
स्रोत
2013-10-26 17:56:54
"किसी भी माध्यम से आदर्श नहीं है।" वास्तव में। क्या तत्व वैध होने के बाद स्टाइल को वैध करने का कोई तरीका है, लेकिन _not_ आवश्यक सामग्री नहीं है? मैंने ऐसा करने का कोई तरीका नहीं बनाया है। –
मैं "प्रस्तुत" जैसे रूपों के लिए एक (वर्तमान में मौजूद नहीं) pseduo-class की कल्पना कर सकता हूं ताकि यह किसी भी निहित इनपुट के लिए माता-पिता चयनकर्ता के रूप में कार्य करे, जैसे '#myform: सबमिट इनपुट: आवश्यक: अमान्य'। चूंकि यह वर्तमान परिदृश्य वास्तव में अनजान है, फिर भी यह आवश्यक नहीं है कि सीएसएस को यह पता चल जाए कि एक क्षेत्र विशिष्ट परिस्थितियों में अमान्य है (इसे तुरंत क्यों नहीं करना चाहिए, जहां तक यह जानता है?), तो आप वास्तव में इनपुट शैली को फॉर्म की स्थिति में जोड़ना चाहते हैं, न कि इनपुट स्वयं (उदाहरण के लिए, जब आवश्यक फ़ील्ड खाली हो और मूल रूप सबमिट हो)। – Anthony
यह उत्तर: https: // stackoverflow।कॉम/प्रश्न/41619497/कैसे-टू-मेक-स्यूडो-क्लास-अमान्य-लागू-एक-इनपुट-बाद-सबमिट-ए-फॉर्म वास्तव में इस कुएं से संबंधित है, मुझे लगता है, भले ही इसे थोड़ी-थोड़ी जावास्क्रिप्ट की आवश्यकता हो । यह सिर्फ फॉर्म में सबमिट "एक वर्ग" जोड़ता है (जैसा कि मैं सुझाव दे रहा था!) ताकि स्टाइल नियम 'form.submitted इनपुट हो सकें: आवश्यक: अमान्य' – Anthony