MicrosoftMvcJQueryValidation.js
由 ASP.NET MVC 2 用于客户端验证。
这个文件有问题只是不能正常工作,想知道我是否有错误的版本。
我使用的版本来自期货的来源。
MicrosoftMvcJQueryValidation.js
5,626 bytes
11/17/09 10:43:12am
我认为我的版本错误有两个原因:
1)我实际上必须调用此代码才能使验证例程完全正常工作。这是因为现在嵌入的默认客户端验证功能FormContext.cs
是Sys.Mvc.FormValidation.enableClientValidation
.
ViewContext.FormContext.ClientValidationFunction = "EnableClientValidation";
2) jquery.validate.js 中有一些代码执行以下操作:
this.settings.errorPlacement
? this.settings.errorPlacement(label, $(element) )
: label.insertAfter(element);
这会在以下位置调用此函数MicrosoftMvcJQueryValidation.js
:
errorPlacement: function(error, element) {
var messageSpan = fieldToMessageMappings[element.attr("name")];
$(messageSpan).empty();
$(messageSpan).removeClass("field-validation-valid");
$(messageSpan).addClass("field-validation-error");
error.removeClass("input-validation-error");
error.attr("_for_validation_message", messageSpan);
error.appendTo(messageSpan);
},
问题是元素已被jQuery.validate
jQuery$(element)
表达式包裹。
因此element.attr("name")
未定义,但element[0].attr("name")
有效。
我从微软网站MicrosoftMvcJQueryValidation.js
上的期货下载中获取。`
我找不到任何其他MicrosoftMvcJQueryValidation
版本 - 但我确信一定有一个。任何人都可以帮忙吗?