मेरे पास कई कंटेनर (पैनल) में अलग-अलग इनपुट अलग-अलग हैं। मेरी समस्या यह है कि यदि इनमें से एक पैनल छिपा हुआ है (style="display:none;"
), jQuery.validate प्लगइन, उन इनपुट को मान्य नहीं करता है।jQuery.validate मान्य नहीं है अगर कंटेनर छिपा हुआ है
मैं एक छोटा सा उदाहरण के साथ एक परीक्षण बनाने के लिए और एक ही समस्या होता है:
दृश्य:
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Fields</legend>
<div class="UserName" style="display:none;">
<div class="editor-label"> @Html.LabelFor(model => model.UserName) </div>
<div class="editor-field">
@Html.TextBoxFor(model => model.UserName) @Html.ValidationMessageFor(model => model.UserName)
</div>
</div>
<div class="editor-label"> @Html.LabelFor(model => model.FirstName) </div>
<div class="editor-field">
@Html.TextBoxFor(model => model.FirstName) @Html.ValidationMessageFor(model => model.FirstName)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.LastName)
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.LastName) @Html.ValidationMessageFor(model => model.LastName)
</div>
<div class="editor-label"> @Html.LabelFor(model => model.City) </div>
<div class="editor-field">
@Html.TextBoxFor(model => model.City) @Html.ValidationMessageFor(model => model.City)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
मॉडल:
public class UserModel {
[Required]
[StringLength(6, MinimumLength = 3)]
[Display(Name = "User Name")]
[RegularExpression(@"(\S)+", ErrorMessage = "White space is not allowed")]
[ScaffoldColumn(false)]
public string UserName { get; set; }
[Required]
[StringLength(8, MinimumLength = 3)]
[Display(Name = "First Name")]
public string FirstName { get; set; }
[Required]
[StringLength(9, MinimumLength = 2)]
[Display(Name = "Last Name")]
public string LastName { get; set; }
[Required()]
public string City { get; set; }
}
"उपयोगकर्ता नाम" संपत्ति पर मान्य नहीं है क्लाइंट "display:none;"
धन्यवाद के साथ div के अंदर है आप
यदि सत्यापन विफल हो जाता है तो आप क्या करेंगे? अगर यह छुपा हुआ है तो उपयोगकर्ता इसे कैसे सही करेगा? यह jQuery के लिए केवल उन फ़ील्ड को सत्यापित करने के लिए समझ में आता है जो पृष्ठ पर दिखाई दे रहे हैं और उपयोगकर्ता नियम विफल होने पर सही कर सकते हैं। – ShankarSangoli
@ शंकरसंगोली जैसा कि मैंने पूछताछ में बताया है, वे क्षेत्र हैं जो दृश्यों को बहुत लंबे समय से रोकने के लिए पैनलों में छिपे हुए हैं, क्या यह मान्य नहीं होना चाहिए, पैनलों को त्रुटि के साथ दिखाएं। यह एक ही समस्या के साथ बस एक साधारण उदाहरण है। –