को समझना मैं कुछ समझने की कोशिश कर रहा हूं।
इस ब्लॉग पोस्ट http://bradwilson.typepad.com/blog/2010/10/mvc3-unobtrusive-validation.html
ब्रिजिंग HTML और jQuery मान्य से: jQuery मान्य के लिए सत्यापनकर्ता लेखन, और एडाप्टर जो लेता लेखन: एडेप्टर
एक क्लाइंट-साइड सत्यापनकर्ता लेखन दो चरण होते हैं HTML विशेषताओं से पैरामीटर मान और इसे jQuery में बदल देता है मेटाडेटा मान्य करें। पूर्व विषय इस ब्लॉग पोस्ट के दायरे में नहीं है (क्योंकि यह वास्तव में एमवीसी विशिष्ट नहीं है)।
jQuery.validator.unobtrusive.adapters पर एक एडाप्टर संग्रह उपलब्ध है। एडाप्टर संग्रह को लटकाना एडाप्टर पंजीकरण विधि (जोड़ें) और तीन सहायक है जिसका उपयोग बहुत ही सामान्य प्रकार के एडेप्टर (एडबूल, एडसिंगलेवल और एडमिन्मैक्स) को पंजीकृत करने के लिए किया जा सकता है।
ध्यान दें कि यह दो चरणों का कहना है।
लेकिन अगर आप इस पोस्ट पर एक नज़र डालें MVC3: make checkbox required via jQuery validate? आप केवल दूसरे चरण ("एडाप्टर लेखन") सत्यापन के लिए की जरूरत है काम करने के लिए - कोड की इस पंक्ति जोड़कर:
$.validator.unobtrusive.adapters.addBool("mandatory", "required");
मैं बाहर का परीक्षण किया एक नए एमवीसी 4 इंटरनेट ऐप में कोड और यह ठीक काम करता है, यहां सुपरसंपल नमूना है।
-
:
$ .validator.unobtrusive.adapters.addBool ("अनिवार्य", "आवश्यक") है; वास्तव में एक विशेषता वर्ग लिखने के अलावा आपको केवल एक चीज चाहिए?
दृश्यों के पीछे यह वास्तव में क्या करता है?
मुझे एडबूल के बारे में अच्छा दस्तावेज कहां मिल सकता है?
देखें मॉडल
public class SimpleViewModel
{
[Mandatory(ErrorMessage = "You must agree to the Terms to register.")]
[Display(Name = "Terms Accepted")]
public bool IsTermsAccepted { get; set; }
}
मान्यता
public class MandatoryAttribute : ValidationAttribute, IClientValidatable
{
public override bool IsValid(object value)
{
return (!(value is bool) || (bool)value);
}
public IEnumerable<ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context)
{
ModelClientValidationRule rule = new ModelClientValidationRule();
rule.ErrorMessage = FormatErrorMessage(metadata.GetDisplayName());
rule.ValidationType = "mandatory";
yield return rule;
}
}
देखें
@model MvcApplication2.Models.SimpleViewModel
@{
ViewBag.Title = "";
}
@using (Html.BeginForm()) {
@Html.ValidationSummary()
@Html.CheckBoxFor(model => model.IsTermsAccepted)
@Html.ValidationMessageFor(model => model.IsTermsAccepted)
<input type="submit" value="Send" />
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
<script type="text/javascript">
$.validator.unobtrusive.adapters.addBool("mandatory", "required");
</script>
}
तो मूल रूप से मुझे मिल गया है तीन सवालों का श्रेय दें
1: केवल "पहले से मौजूद" एडेप्टर के लिए। 2: सुनिश्चित नहीं है, खुद को खोजने की उम्मीद है। 3: यदि आपको कोई मिलता है, तो कृपया मुझे बताएं! – BlueChippy
http://thewayofcode.wordpress.com/2012/01/18/custom-unobtrusive-jquery- validation-with-data-annotations-in-mvc-3/ – BlueChippy