首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在同一项目中加载多个jquery版本,但不加载相同的页面

在同一项目中加载多个jquery版本,但不加载相同的页面
EN

Stack Overflow用户
提问于 2021-02-10 23:18:40
回答 1查看 75关注 0票数 0

我正在将一个aspx项目更新为asp net MVC。由于工作正在进行中,一半的页面仍然在apsx中。对于我的aspx页面,我需要加载jquery-1-x-x,对于我的asp net页面,我需要加载jquery-3-x-x (我在mvc页面上使用了一些jquery-3功能,但是在我的aspx页面上使用这个版本会引起我无法处理的错误)。

为此,我在Portail_MasterPage中加载了jquery-1

代码语言:javascript
复制
<asp:ScriptReference Path="~/Scripts/jquery-1.10.2.js" />

为了在我的asp net页面中添加jquery-3,我使用了bundles。我的BundleConfig.cs中有以下内容:

代码语言:javascript
复制
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-3.5.1.js"));

然后我使用一个布局文件,它包含以下行:

代码语言:javascript
复制
@Scripts.Render("~/bundles/jquery")

并且在每个html文件(asp网络页面)中被调用:

代码语言:javascript
复制
@{
ViewBag.Title = "SaisieConges";
Layout = "~/Areas/MVC/Views/Shared/_Layout.cshtml";}

这样,我就在aspx页面中加载了jquery-1-x-x,并在asp net页面中加载了jquery-1-x-x + jquery-3-x-x。但我最近发现,在同一个页面中加载两个jquery版本会引发问题。

所以,我想知道的是,有没有办法根据我是否在aspx页面上加载一个特定的jquery版本。

感谢您的宝贵时间,并为我的英语道歉!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-11 23:13:11

我找到了一种做我想做的事情的方法,为整个项目(aspx + aspnet)保留一个全局母版页,但我必须修改我的每个aspx文件(这并不重要,因为我计划在更新后删除它们)。

我将我的脚本引用放在一个ContentPlaceHolder中,如下所示:

代码语言:javascript
复制
<asp:ContentPlaceHolder id="ScriptManager" runat="server">

    <asp:ToolkitScriptManager ID="ToolkitScriptManager0" runat="server" EnableScriptGlobalization="true" EnablePartialRendering="true" CombineScripts="false" ScriptMode="Release">
        <Scripts>
            ...
            <asp:ScriptReference Path="~/Scripts/jquery-3.5.1.js" />
            ...
        </Scripts>
    </asp:ToolkitScriptManager>

</asp:ContentPlaceHolder>

正因为如此,默认情况下每个文件都有jquery-3-5-1。要覆盖此版本(而不是添加第二个版本),您可以在想要的aspx页面中修改原始ContentPlaceHolder,如下所示:

代码语言:javascript
复制
    <asp:Content ID="Content3" ContentPlaceHolderID="ScriptManager" Runat="Server">
    <asp:ToolkitScriptManager ID="ToolkitScriptManager0" runat="server" EnableScriptGlobalization="true" EnablePartialRendering="true" CombineScripts="false" ScriptMode="Release">
            <Scripts>
                ...
                <asp:ScriptReference Path="~/Scripts/jquery-1.10.2.js" />
        ...
            </Scripts>
     </asp:ToolkitScriptManager>
</asp:Content>

这样,我就只能加载所需的jquery版本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66139705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档