मैं jQuery Mobile (Alpha 3)ASP.NET MVC 3 आधारित एमवीसी 3 के साथ आने वाले अविभाज्य सत्यापन का उपयोग कर रहा हूं। जब कोई पृष्ठ सीधे एक्सेस किया जाता है (यूआरएल में कोई हैश नहीं), सत्यापन पूरी तरह से काम करता है। हालांकि, जब आप पृष्ठ पर नेविगेट करते हैं, तो jQuery मोबाइल गतिशील रूप से लोड करने के लिए अजाक्स नेविगेशन का उपयोग करता है (यूआरएल में हैश प्रदर्शित करना) और सत्यापन कार्य करना बंद कर देता है।jQuery मोबाइल और अविभाज्य सत्यापन
मॉडल::
[Required(ErrorMessage = "Missing value")]
[DisplayName("Property Display Name")]
public int? PropertyName { get; set; }
देखें (उस्तरा):
@Html.LabelFor(model => model.PropertyName)
@Html.TextBoxFor(model => model.PropertyName)
@Html.ValidationMessageFor(model => model.PropertyName)
जेनरेट किए गए HTML:
यहाँ उपयोग में कोड का एक नमूना है
<label for="PropertyName">Property Display Name</label>
<input data-val="true" data-val-number="The field Property Display Name must be a number." data-val-required="Missing value" id="PropertyName" name="PropertyName" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="PropertyName" data-valmsg-replace="true"></span>
यह संभव है कि अन्य पृष्ठ पहले लोड हो चुके हैं और HTML तत्वों में अब अद्वितीय आईडी नहीं हैं। लेबल, टेक्स्टबॉक्स, और सत्यापन मैसेज के लिए HTML उत्पन्न करने के लिए अपने स्वयं के एचटीएमएल हेल्पर क्लास को रोल करने के अलावा, क्या इस परिदृश्य को संभालने का कोई तरीका है?
मैं JQM साथ के बारे में अद्वितीय आईडी सोचा और यह अभी भी मुझे परेशान। जेक्यूएम लेखक स्वयं इसके बारे में ज्यादा कुछ नहीं कहते हैं। मैंने प्रेसीडेंट फूटर का एक उदाहरण भी देखा जहां आईडी को डुप्लिकेट किया गया। मैं दो समाधान देखता हूं - या तो अपने आईडी का ख्याल रखना, या डीओएम से छोड़े गए पृष्ठ को मजबूती से हटाकर जेक्यूएम कैशिंग को नष्ट कर दें क्योंकि नया लोड किया जा रहा है - 'पेजबेयरक्रिकेट' इवेंट – naugtur
हमारे पास समान समस्याएं हैं, लेकिन हेवन ' यह बिल्कुल काम नहीं कर रहा है। हम जेक्यू 1.5 और जेक्यूएम 1.03 ए पर हैं। यहां पर संघर्ष .. – pavsaund