MicrosoftMvcJQueryValidation.js
被ASP.NET MVC 2用於客戶端驗證。MVC 2 beta 2的MicrosoftMvcJQueryValidation.js的正確版本在哪裏?
這個文件有問題只是不正常工作,並想知道如果我有錯誤的版本。
我使用的版本來自期貨來源。
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")
有效。
我從Microsoft's site上的期貨下載中獲得MicrosoftMvcJQueryValidation.js
。 `
我找不到任何其他MicrosoftMvcJQueryValidation
版本 - 但我確定必須有一個。誰能幫忙?
您能否澄清一下您正在使用的ASP.NET MVC 2的哪個預覽?沒有「Beta 2」,但有一個預覽版2以及Beta版和RC版。 ASP.NET MVC 2預覽版2也包含在Visual Studio 2010 Beta 2中。是的,它令人困惑! – Eilon 2009-12-26 22:11:53
好吧,這個問題現在有點過時了,有一個RC。請參閱我的其他問題http://stackoverflow.com/questions/1934803/how-do-i-use-microsoftmvcvalidation-js-without-having-to-include-microsoftajax-js這應該有助於 – 2009-12-27 01:39:25
哦,我的意思是預覽2 (當我寫這個問題時,RC仍然沒有出現) – 2009-12-27 01:40:04