【发布时间】:2021-05-14 07:21:43
【问题描述】:
我正在将一个 aspx 项目更新为 asp net MVC。由于工作正在进行中,一半的页面仍在 apsx 中。对于我的aspx页面,我需要加载jquery-1-xx,对于我的asp网页,jquery-3-xx(我在我的mvc页面上使用了一些jquery-3功能,但是在我的aspx页面上使用这个版本会引发我无法处理的错误)。
为此,我在我的 Portail_MasterPage 中加载了 jquery-1
<asp:ScriptReference Path="~/Scripts/jquery-1.10.2.js" />
为了在我的 asp 网页中添加 jquery-3,我使用了 bundles。我的 BundleConfig.cs 中有这个:
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-3.5.1.js"));
然后我使用具有这一行的布局文件:
@Scripts.Render("~/bundles/jquery")
以及在每个 html 文件(asp 网页)中调用的内容:
@{
ViewBag.Title = "SaisieConges";
Layout = "~/Areas/MVC/Views/Shared/_Layout.cshtml";}
有了这个,我在我的aspx页面中加载了jquery-1-x-x,在我的asp网页中加载了jquery-1-x-x + jquery-3-x-x。但我最近发现在同一页面中加载两个 jquery 版本会引发问题。
所以,我想知道是否有一种方法可以仅加载一个特定的 jquery 版本,具体取决于我是否在 aspx 页面上。
感谢您的宝贵时间,对不起我的英语!
【问题讨论】:
-
我在一个 ASP 项目中做了类似的事情,但我根据我所在的网页(使用大小写/开关)有条件地加载了 CSS 文件。我相信你可以用 jQuery 做类似的事情。
-
为什么/如何将两者都加载到 MVC 中?他们应该使用不同的 masterpage / _layout 并且您的描述表明该布局只有 3.5 - 那么 tit 是如何获得 1.10 的?您是否将
<asp:ScriptReference添加到您的MVC 页面?不要。 -
你在哪里写的这个声明?我不确定我是否可以有效地使用我的页面扩展作为加载特定版本的条件:/
-
我认为 MVC 使用的是相同的母版页,因此它也会在我的 mvc 页面上加载 jquery-1 版本。我确认我的布局只有 3.5,所以我认为 1.10 来自母版页,因为它是我项目中唯一指定它的地方
-
那你应该解决那个问题而不是它的影响
标签: javascript jquery asp.net version