“jquery.unobtrusive-ajax.js”过时了吗?

Posted

技术标签:

【中文标题】“jquery.unobtrusive-ajax.js”过时了吗?【英文标题】:Is "jquery.unobtrusive-ajax.js" obsolete? 【发布时间】:2014-06-16 19:35:54 【问题描述】:

我有一个古老的 MVC2 解决方案,已迁移到 MVC5 (Visual Studio 2013)。

我想用新库更新项目中使用的旧库。

我有例如。 jquery.unobtrusive-ajax.js 库。 像现在这样过时了吗?

我问是因为那个库引用了

/// <reference path="jquery-1.4.4.js" />

但我升级了 jQuery(我现在使用 jQuery v1.8.3)。

如果用什么替换(比如jquery.validate.unobtrusive.js(?))

附言。 在默认 MVC 项目中,Visual Studio 2013 提出了以下“验证”脚本:

jquery.validate-vsdoc.js
jquery.validate.js
jquery.validate.min.js
jquery.validate.unobtrusive.js
jquery.validate.unobtrusive.min.js

【问题讨论】:

我建立了一个新站点,它使用以下三个验证脚本:jquery.unobtrusive-ajax.js、jquery.validate.js、jquery.validate.unobtrusive.js 据我所知,jquery.unobtrusive-ajax.js 不是用于验证,而是用于一些 ajax 助手,如@Ajax.BeginForm@Ajax.ActionLink 来运行 ajax 活动。因此,如果您不在页面中使用它们,则不需要。 我怎么知道我是否还在使用它们?也许我升级了一些库来取代它的功能......但是有没有办法查看对那个“ajax”库的“引用”?我在解决方案的代码中没有任何@Ajax.BeginForm @Ajax.ActionLink... 我有@Ajax.GlobalizationScript,但这是在 System.Web.Mvc.Ajax.AjaxExtensions... 库中定义的 【参考方案1】:

jquery.unobtrusive-ajax.js 是一个支持@Ajax.* 助手的微软库,这是一个不显眼地设置jQuery Ajax 的插件。

如果您在代码中使用@Ajax 助手,例如ActionLink 或BeginForm,以及更新jQuery,您必须更新Microsoft jQuery Unobtrusive Ajax,否则您可以将其删除。

如果您删除对 jquery.unobtrusive-ajax.js 的引用,@Ajax 助手将像常规 @html 助手一样工作。

我怎么知道我是否还在使用它们?

尝试寻找这些方法的用法。

【讨论】:

这是什么:nuget.org/packages/Microsoft.jQuery.Unobtrusive.Ajax 那么? 这仍然有效吗?因为它没有列在较新的 mvc5.x asp.net/ajax/…MS Ajax 是一个带有UpdatePanel 等的网络表单......它与这个插件无关。 “Jquery unobtrusive-ajax”并没有过时。最新版本已于 2 个月前发布(我在 2018 年发布)【参考方案2】:

您问的是如何确定是否安装了最新的 jquery-unobtrusive-ajax.js(或如何检查它是否已过时)。

Visual Studio 2010+ 附带 NuGet 包管理器控制台 (PMC)。要查看您项目的外部引用(例如,不显眼的 AJAX)是否仍然是最新的:

    在 Visual Studio 中打开您的项目 在解决方案资源管理器中右键单击您的项目 选择“管理 NuGet 包” 选择您要更新的包(非侵入式 AJAX a/o 非侵入式验证) 您可以在此处查看您使用的是最新版本的外部参考还是有可用的更新。 按 [更新] 按钮。

【讨论】:

以上是关于“jquery.unobtrusive-ajax.js”过时了吗?的主要内容,如果未能解决你的问题,请参考以下文章

asp.net core mvc 异步表单(Ajax.BeginForm)

10.MVC框架开发(Ajax应用)

asp.net mvc  Ajax.BeginForm 异步上传图片的问题

在ASP.NET MVC4中如何执行远程验证?

MVC Ajax.BeginForm 提交上传图片