Asp.Net Web Forms Объединение библиотек jQuery - PullRequest
0 голосов
/ 07 мая 2019

У меня есть приложение Web Forms, где я изо всех сил пытаюсь заставить JQuery связывание работать должным образом.

Я пробовал несколько вариантов следующего кода и также пытался использовать пакет NuGet AspNet.ScriptManager.jQuery , но пока ничего не получалось.

Проблема в том, что сценарий загружается на стороне клиента, но он не работает:

jquery bundle loaded Когда вызывается функция jquery, яполучить типичное «Ошибка типа: $ (...). Не является функцией » - ошибка.

Мой код в BundleConfig.cs:

 BundleTable.EnableOptimizations = false;
 bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-3.3.1.js"));
 ScriptManager.ScriptResourceMapping.AddDefinition("jquery",
            new ScriptResourceDefinition
            {
                Path = "~/bundles/jquery",
                DebugPath = "~/bundles/jquery",
            });

Ив Site.Master:

<asp:ScriptManager runat="server" EnablePageMethods="True">
            <Scripts>
                <asp:ScriptReference Name="jquery" />
                <asp:ScriptReference Path="~/Scripts/bootstrap.min.js" />
                <asp:ScriptReference Name="jquery.ui.combined" />
                <asp:ScriptReference Name="respond" />
                <asp:ScriptReference Path="~/Scripts/GlobalFunctions5.js" />
                <asp:ScriptReference Path="~/Scripts/AjaxControlToolkit/Bundle" />
                <%--Site Scripts--%>
            </Scripts>
        </asp:ScriptManager>

В конечном счете, я хочу иметь возможность обновлять пакеты jQuery NuGet без необходимости изменять BundleConfig, поэтому я попробовал это тоже (что даже не загружает бунд нана стороне клиента):

bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-{version}.js"));

Есть ли что-то, что также может повлиять на пакет jQuery или в чем я здесь ошибся?

Спасибо за любую помощь!

1 Ответ

0 голосов
/ 10 мая 2019

Я «решил» проблему, запустив новый проект Web Forms и переместив туда все содержимое.Это решило проблему.Частично проблема могла заключаться в том, что исходный проект был создан с использованием VS 2008, а для нового проекта я использовал VS 2015. Я не изменил шаблон веб-форм и просто добавил пакеты NuGet AspNet.ScriptManager.jQuery и AspNet.ScriptManager.jQuery.UI.Combined.Теперь связывание и минификация с помощью jQuery работают должным образом, но недостаток и обновление jQuery по-прежнему требуют дальнейшего ручного взаимодействия.

...