小编典典

从ASP.NET MVC 3开始,MicrosoftAjax.js,MicrosoftMvcAjax.js和MicrosoftMvcValidation.js是否已过时?

ajax

MicrosoftAjax.jsMicrosoftMvcAjax.jsMicrosoftMvcValidation.js过时的ASP.NET
MVC 3的?我一直没能找到这个多的信息在网络上,但是从我读过这意味着,这些文件是在ASP.NET MVC
1-2应用,并受到被替换jquery.validate.min.jsjquery.unobtrusive- ajax.min.jsjquery.validate.unobtrusive.min.js。那是对的吗?我还需要Microsoft文件吗?


阅读 296

收藏
2020-07-26

共1个答案

小编典典

是的,所有Microsoft*帮助程序在ASP.NET MVC
3中都是过时的。对我来说,它们一直都是过时的,但是现在至少Microsoft将此正式发布,并用jQuery替换了。

引入了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它们。

第二个ClientValidationEnabled默认情况下也是启用的。使用兼容的JavaScript的工作方式相同,启用此设置后,所有生成输入字段的帮助程序都会在其上发出HTML5
data-
属性。然后,包括jquery.validate.jsjquery.validate.unobtrusive.js使它们工作的脚本,例如在_Layout.cshtml中。
它们必须按此顺序出现,并且必须在加载jquery之后出现:*

<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*脚本。从您的网站中删除它们。删除那些文件。

2020-07-26