Не работает выпадающее меню в начальной загрузке ASP.NET - PullRequest
0 голосов
/ 29 января 2019

Выпадающее меню не выпадает, при нажатии ничего не происходит.Я искал все сообщения и до сих пор не могу заставить это работать.У меня есть раскрывающийся список в моем проекте asp.net webforms.

<li class="nav-item dropdown">
      <a class="nav-link dropdown-toggle" href="#" id="myAccount" data-toggle="dropdown">My Account<span class="caret"></span></a>
      <div class="dropdown-menu" aria-labelledby="bd-versions">
        <a class="dropdown-item" href="/docs/4.1/">Messages</a>
        <div class="dropdown-divider"></div>
        <a class="dropdown-item" href="/docs/4.1/">Subscription</a>
        <div class="dropdown-divider"></div>
        <a class="dropdown-item active" href="/docs/4.0/">Profile</a>
      </div>
</li>

jquery-3.3.1 установлен правильно через nuget и на него ссылаются до начальной загрузки следующим образом.

<asp:ScriptManager runat="server">
            <Scripts>
                <%--To learn more about bundling scripts in ScriptManager see https://go.microsoft.com/fwlink/?LinkID=301884 --%>
                <%--Framework Scripts--%>
                <asp:ScriptReference Name="MsAjaxBundle" />
                <asp:ScriptReference Name="jquery" />
                <asp:ScriptReference Name="bootstrap" />
                <asp:ScriptReference Name="WebForms.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebForms.js" />
                <asp:ScriptReference Name="WebUIValidation.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebUIValidation.js" />
                <asp:ScriptReference Name="MenuStandards.js" Assembly="System.Web" Path="~/Scripts/WebForms/MenuStandards.js" />
                <asp:ScriptReference Name="GridView.js" Assembly="System.Web" Path="~/Scripts/WebForms/GridView.js" />
                <asp:ScriptReference Name="DetailsView.js" Assembly="System.Web" Path="~/Scripts/WebForms/DetailsView.js" />
                <asp:ScriptReference Name="TreeView.js" Assembly="System.Web" Path="~/Scripts/WebForms/TreeView.js" />
                <asp:ScriptReference Name="WebParts.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebParts.js" />
                <asp:ScriptReference Name="Focus.js" Assembly="System.Web" Path="~/Scripts/WebForms/Focus.js" />
                <asp:ScriptReference Name="WebFormsBundle" />
                <%--Site Scripts--%>
            </Scripts>
</asp:ScriptManager>

Чего мне не хватает?Может быть, другая подсказка, когда я уменьшаю размер окна и гибко реагирующее меню начальной загрузки, «раскрывающийся» бургер мигает только секунду, а затем падает сам по себе.

Обновление : я добавил следующееCDN ссылки, как предложено, и это работает.Я озадачен тем, как правильно связать эти сценарии в VS17 для начальной загрузки jquery и popper.

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script>

Опять здесь приведены ссылки на мои сценарии в bundleconfig.cs, а теперь какони закомментированы в site.master

        // For more information on Bundling, visit https://go.microsoft.com/fwlink/?LinkID=303951
    public static void RegisterBundles(BundleCollection bundles)
    {

        bundles.Add(new ScriptBundle("~/bundles/jquery")
                        .Include("~/Scripts/jquery-3.3.1.js")
                        .Include("~/Scripts/jquery-3.3.1.min.js"));

        bundles.Add(new ScriptBundle("~/bundles/bootstrap")
            .Include("~/Scripts/bootstrap.js")
            .Include("~/Scripts/bootstrap.min.js"));

        bundles.Add(new ScriptBundle("~/bundles/WebFormsJs").Include(
                        "~/Scripts/WebForms/WebForms.js",
                        "~/Scripts/WebForms/WebUIValidation.js",
                        "~/Scripts/WebForms/MenuStandards.js",
                        "~/Scripts/WebForms/Focus.js",
                        "~/Scripts/WebForms/GridView.js",
                        "~/Scripts/WebForms/DetailsView.js",
                        "~/Scripts/WebForms/TreeView.js",
                        "~/Scripts/WebForms/WebParts.js"));

        // Order is very important for these files to work, they have explicit dependencies
        bundles.Add(new ScriptBundle("~/bundles/MsAjaxJs").Include(
                "~/Scripts/WebForms/MsAjax/MicrosoftAjax.js",
                "~/Scripts/WebForms/MsAjax/MicrosoftAjaxApplicationServices.js",
                "~/Scripts/WebForms/MsAjax/MicrosoftAjaxTimer.js",
                "~/Scripts/WebForms/MsAjax/MicrosoftAjaxWebForms.js"));

        // Use the Development version of Modernizr to develop with and learn from. Then, when you’re
        // ready for production, use the build tool at https://modernizr.com to pick only the tests you need
        bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
                        "~/Scripts/modernizr-*"));
        bundles.Add(new ScriptBundle("~/bundles/popper").Include(
                       "~/Scripts/umd/popper.min.js"));
    }

    <asp:ScriptManager runat="server">
        <Scripts>
            <%--To learn more about bundling scripts in ScriptManager see https://go.microsoft.com/fwlink/?LinkID=301884 --%>
            <%--Framework Scripts--%>
            <%--<asp:ScriptReference Name="jquery" />
            <asp:ScriptReference Name="bootstrap" />--%>

Хотелось бы узнать рекомендуемый VS способ сделать это, так как мне не нравится полагаться на CDN.спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...