是MicrosoftAjax.js,MicrosoftMvcAjax.js和MicrosoftMvcValidation.js过时的ASP.NET MVC 3的?我一直没能找到这个多的信息在网络上,但是从我读过这意味着,这些文件是在ASP.NET MVC 1-2应用,并受到被替换jquery.validate.min.js,jquery.unobtrusive- ajax.min.js和jquery.validate.unobtrusive.min.js。那是对的吗?我还需要Microsoft文件吗?
MicrosoftAjax.js
MicrosoftMvcAjax.js
MicrosoftMvcValidation.js
jquery.validate.min.js
jquery.unobtrusive- ajax.min.js
jquery.validate.unobtrusive.min.js
是的,所有Microsoft*帮助程序在ASP.NET MVC 3中都是过时的。对我来说,它们一直都是过时的,但是现在至少Microsoft将此正式发布,并用jQuery替换了。
Microsoft*
引入了2个新功能
<appSettings> <add key="webpages:Version" value="1.0.0.0"/> <add key="ClientValidationEnabled" value="true"/> <add key="UnobtrusiveJavaScriptEnabled" value="true"/> </appSettings>
首先是UnobtrusiveJavaScriptEnabled。这意味着,如果在web.config中启用此功能(在创建新的ASP.NET MVC 3应用程序时默认启用该功能),则所有Ajax.*帮助程序(例如Ajax.BeginForm和)Ajax.ActionLink都将在其各自的DOM元素上发出HTML5 data- *属性。与标记混合的JavaScript。然后,您应该将jquery.unobtrusive- ajax.js脚本包含到页面中,该脚本将解析这些属性并使用jQuery轻松地AJAXify它们。
UnobtrusiveJavaScriptEnabled
Ajax.*
Ajax.BeginForm
Ajax.ActionLink
jquery.unobtrusive- ajax.js
第二个ClientValidationEnabled默认情况下也是启用的。使用兼容的JavaScript的工作方式相同,启用此设置后,所有生成输入字段的帮助程序都会在其上发出HTML5 data- 属性。然后,包括jquery.validate.js和jquery.validate.unobtrusive.js使它们工作的脚本,例如在_Layout.cshtml中。 它们必须按此顺序出现,并且必须在加载jquery之后出现:*
ClientValidationEnabled
jquery.validate.js
jquery.validate.unobtrusive.js
<script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
因此,在ASp.NET MVC 3中,您可以忘记所有Microsoft*脚本。从您的网站中删除它们。删除那些文件。