MicrosoftMvcJQueryValidation.js
ASP.NET MVC 2 使用它进行客户端验证。
该文件存在问题,无法正常工作,想知道是否版本错误。
我使用的版本来自 futures 的来源。
MicrosoftMvcJQueryValidation.js
5,626 bytes
11/17/09 10:43:12am
我认为我的版本错误有两个原因:
1)我实际上必须调用此代码才能使验证例程正常工作。这是因为默认的客户端验证功能现在嵌入到FormContext.cs
is 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
版本 - 但我确信一定有一个。有人可以帮忙吗?