8

में डेटा-वैल-आवश्यक संदेश को अनदेखा करता है मैंने अपने डेटा एनोटेशन संदेशों को स्थानीयकृत करने के लिए here वर्णित विधि का उपयोग किया है और मूल रूप से यह सामान्य रूप पोस्ट में ठीक काम कर रहा है। मैं क्लाइंट साइड पर स्थानीयकृत सत्यापन संदेश भी देख सकता हूं।jQuery अविभाज्य सत्यापन एमवीसी 3

हालांकि, समस्या तब होती है जब मेरे पास आंशिक दृश्य होता है जिसमें इनपुट फ़ील्ड को सत्यापित किया जाता है और AJAX कॉल का उपयोग करके लोड किया जाता है। किसी कारण से, मुझे तत्व के डेटा-वैल-आवश्यक विशेषता में सेट किया गया है जो मेरे स्थानीय संदेश के बजाय डिफ़ॉल्ट सत्यापन संदेश ("यह फ़ील्ड आवश्यक है") मिलता है।

मैं निम्नलिखित सत्यापित कर ली है
1. मैं दोनों "jquery.validate.min.js" और "jquery.validate.unobtrusive.min.js" को शामिल किया है।
2. मैंने AJAX प्रतिक्रिया की जांच की और इसमें स्थानीय संदेश के साथ डेटा-वैल-आवश्यक विशेषता शामिल है।
1. मैं ajax प्रतिक्रिया (बात नहीं बनी) पार्स करने की कोशिश की $ .validator.unobtrusive.parse ('फॉर्म') के लिए
2. पार्सिंग गतिशील सामग्री के रूप में:

मैं पहले से ही निम्नलिखित समाधान की कोशिश की है here वर्णित सत्यापन। अभी भी कोई समाधान नहीं है।

मेरे पास एक दबदबा की समय सीमा है और यह मुझे परेशान कर रहा है।

+0

आप आंशिक रूप से सामग्री जोड़ने के बाद तुरंत मान्य करने के लिए प्रयास कर रहे हैं, या गतिशील सामग्री प्रपत्र के बाकी के साथ सामान्य रूप से प्रस्तुत किया जाता है? –

+0

गतिशील सामग्री सामान्य रूप से शेष रूप के साथ जमा की जाती है। – sprisoner

+0

अंत में एक सफलता थी। मेरे पृष्ठ में दो रूप थे, एक इंडेक्स पेज में और एक आंशिक पृष्ठ में। जिन बटनों पर फॉर्म क्लिक करेगा, वे इंडेक्स पेज पर थे। मैंने बटन को आंशिक पृष्ठ में ले जाया ताकि यह आंशिक पृष्ठ के फॉर्म तत्व के अंदर हो और लो! यह ठीक काम किया। हालांकि समस्या हल हो गई है, मुझे नहीं पता कि समस्या का कारण क्या है और अंतर्निहित रूप में बटन को कैसे हल किया जाए? मेरी समस्या हल हो गई है, लेकिन अगर कोई मुझे कारण समझने में मदद कर सकता है, तो मैं इसे एक उत्तर के रूप में चिह्नित कर सकता हूं और इस सवाल को बंद कर सकता हूं। – sprisoner

उत्तर

3

मुझे लगता है कि आपने पहले ही यह कोशिश की है: stackoverflow.com/questions/4406291/jquery-validate-unobtrusive-not-working-with-dynamic-injected-elements - स्टीव लैम्ब द्वारा दिए गए उत्तर ने मुझे सबसे ज्यादा मदद की।

मूल रूप से, आप सत्यापन कोड के रूप में नियंत्रण यह पृष्ठ लोड पर, केवल एक बार मान्य करने के लिए की जरूरत है ट्रैक करने के लिए एक सूची बनाता है सत्यापनकर्ता जब भी आप पेज की सामग्री को बदलने को पुनः आरंभ कर, की जरूरत है ...

मैं यह भी सुनिश्चित करने के लिए कुछ अतिरिक्त कोड जोड़ना था कि इनपुट सही ढंग से नामित किए गए थे। मुझे एक पल दें और मैं कोड खोद दूंगा। - हम्म, क्षमा करें, वह कोड क्लाइंट ऐप का हिस्सा था, और मैं इसे पोस्ट नहीं कर सकता। नहीं भी यकीन है कि यह एक फर्क वैसे भी बना सकता था ...

+0

धन्यवाद टायसन, मैंने थक गया था। हालांकि, मैंने गलती से इसे हल किया। प्रश्न के नीचे मेरी टिप्पणी पढ़ें। अभी भी उलझन में समस्या क्या थी। – sprisoner

0

शायद ज़रुरत पड़े कोई इस सवाल में गिरावट, प्रलेखन राज्यों के रूप में, यह आवश्यक है कि अपने क्षेत्र एक name विशेषता है:

अनिवार्य: प्रमाणीकरण की आवश्यकता वाले सभी इनपुट तत्वों के लिए 'नाम' विशेषता आवश्यक है, और प्लगइन इसके बिना काम नहीं करेगा। एक 'नाम' विशेषता फॉर्म के लिए भी अद्वितीय होनी चाहिए, क्योंकि प्लगइन सभी इनपुट तत्वों का ट्रैक रखता है। हालांकि, रेडियो या चेकबॉक्स तत्वों का प्रत्येक समूह समान 'नाम' साझा करेगा क्योंकि इस समूह के मान फ़ॉर्म डेटा के एक टुकड़े का प्रतिनिधित्व करते हैं।

Source