当前位置: 首页 > 面试题库 >

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

傅琦
2023-03-14
问题内容

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文件吗?


问题答案:

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



 类似资料:
  • 问题内容: 我有一个PHP文件,有时从启动会话的页面调用该文件,有时从没有会话启动的页面调用该文件。因此,当我使用此脚本时,有时会收到“会话已开始”的错误消息。为此,我放置了以下几行: 但是这次我收到了以下警告消息: 注意:未定义的变量:_SESSION 有没有更好的方法来检查会话是否已经开始? 如果我使用它,它将使一切正常运行,只是关闭警告? 问题答案: PHP > = 5.4.0和PHP 7*

  • 问题内容: CSS规则 应该会迫使浏览器以横向模式打印页面。在许多关于stackoverflow的问题中,在许多其他编程网站上,以及在参考作品(例如O’Reilly的HTML / XTHML权威指南,第五版)中都提到了此规则。 我尝试使用此CSS规则对内联样式和链接样式表进行许多不同的格式调整,并使用IE8,Chrome 7.0和Firefox 3.6指定媒体而不指定媒体。我曾尝试打印到Xerox

  • 本文向大家介绍如何检查PHP会话是否已经开始?,包括了如何检查PHP会话是否已经开始?的使用技巧和注意事项,需要的朋友参考一下 在PHP中,我们利用一个内置函数session_start()来启动会话。但是,PHP脚本中面临的问题是,如果我们多次执行它会引发错误。因此,在这里我们将学习如何在不调用session_start()函数两次的情况下检查会话是否启动。 有两种方法可以解决此问题。 对于低于

  • 问题内容: 如果我在代码中使用如下语句 它将数组初始化为特定的东西吗?(例如0)我似乎记得此文件记录在某处,但我不确定要搜索什么。 问题答案: JLS说,在15.10数组创建表达式中 […]创建具有指定长度的一维数组,并将数组的每个组件初始化为其默认值 在4.12.5变量的初始值处表示: 对于type ,默认值为零,即。

  • 我有这样的代码: 当我们没有任何其他getInstance的静态方法时,是否初始化了此单例惰性?据我所知,类只在某些情况下初始化,比如: 类的实例是使用new()关键字或使用类的反射创建的。forName(),它可能在Java中引发ClassNotFoundException (Surce:http://javarevisited.blogspot.com/2012/07/when-class-l

  • 问题内容: JUnit的新手(实际上是JUnit 4)并遇到了执行测试的套件方式 这是我在新雇主浏览测试代码库时遇到的代码示例。在执行期间,我资助- 首先执行CreateNewProfile测试,然后执行EditProfile,这确实有意义,但随后会引入测试之间的依赖关系。 几个月以来,我一直在遵循非依赖性测试机制(尽管我以前使用的是TestNG而不是JUnit),并且希望EditProfile也