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
от фьючерсов загружают на сайте Microsoft'.
Я не могу найти никакого другого MicrosoftMvcJQueryValidation
версия - но я уверен, что должен быть тот. Кто-либо может помочь?
По состоянию на 17 декабря 2009 года последняя версия MicrosoftMvcJQueryValidation.js
доступна в проекте загрузки фьючерсов .
Будьте внимательны, чтобы включить MicrosoftMvcJQueryValidation.js
и НЕ в одноименный MicrosoftMvcValidation.js
.