簡體   English   中英

'jquery'不是有效的腳本名稱。 名稱必須以'.js'結尾

[英]'jquery' is not a valid script name. The name must end in '.js'

我的ASP.Net項目運行良好,突然間我們出現電源故障。 當我運行我的網絡應用程序時,它現在顯示了很多

無法加載程序集Sanitizer ......“然后”無法加載“HtmlAgility ......

錯誤。 通過使用Visual Studio 2012中的Manage Nuget Package Solutions卸載/重新安裝它們,我能夠解決這些先前的錯誤。

但現在我遇到了另一個錯誤:

'jquery'不是有效的腳本名稱。 名稱必須以'.js'結尾。“

我嘗試通過重新安裝包來做同樣的事情,但它不起作用。 我該怎么做才能解決這個問題? 我已經在我的root \\ Scripts文件夾中有一個jquery.js文件。 我還在我的部分中添加了對此文件的引用:

<script src="Scripts/jquery.js"></script>

但它仍然無法奏效。 請幫忙。

順便說一句,我可以通過使用Nuget工具安裝AspNet.ScriptManager.jQuery.UI.CombinedAspNet.ScriptManager.jQuery包來解決這個問題。

右鍵單擊您的項目,然后去管理NuGet包 ,然后安裝

AspNet.ScriptManager.jQuery.UI.Combined

AspNet.ScriptManager.jQuery

在我的情況下,我不得不添加兩個dll作為我的項目的參考。

在此輸入圖像描述

我有類似的情況,但我嘗試更新DotNetOpenAuth.Core后發生了。 首先它說我需要更新NuGet,我做了,然后我更新了OpenAuth。 之后我開始得到“'jquery'不是一個有效的腳本名稱。名稱必須以'.js'結尾。”

如果我刪除了添加jquery包的行,它將在jquery-ui等上發生。

我卸載並重新安裝了AspNet.ScriptManager.jQuery和AspNet.ScriptManager.Bootstrap軟件包(因為它最終會抱怨),但仍然沒有運氣。

我做的最后一步是從包管理器控制台卸載並重新安裝AjaxControlToolkit並為我修復它。

這是工作解決方案

在您的解決方案中打開Global.asax

復制下面的代碼只需相應地修改您的Jquery版本並將其粘貼到Global.asax Application_Start事件中

        ScriptManager.ScriptResourceMapping.AddDefinition("jquery", new ScriptResourceDefinition
        {
            Path = "~/Scripts/jquery-1.10.2.min.js",
            DebugPath = "~/Scripts/jquery-1.10.2.js",
            CdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.2.min.js",
            CdnDebugPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.2.js",
            CdnSupportsSecureConnection = true,
            LoadSuccessExpression = "window.jQuery"
        });

    ScriptManager.ScriptResourceMapping.AddDefinition("jquery.ui.combined", new ScriptResourceDefinition
    {
        Path = "~/Scripts/jquery-ui-1.10.2.min.js", 
        DebugPath = "~/Scripts/jquery-ui-1.10.2.js", 
        CdnPath = "http://ajax.aspnetcdn.com/ajax/jquery.ui/1.10.2/jquery-ui.min.js", 
        CdnDebugPath = "http://ajax.aspnetcdn.com/ajax/jquery.ui/1.10.2/jquery-ui.js", 
        CdnSupportsSecureConnection = true
    });
         ScriptManager.ScriptResourceMapping.AddDefinition("bootstrap", new ScriptResourceDefinition
    {
        Path = "~/Scripts/bootstrap.min.js", 
        DebugPath = "~/Scripts/bootstrap.js", 
        CdnPath = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js", 
        CdnDebugPath = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.js", 
        CdnSupportsSecureConnection = true
    });

感謝您發布您的后續答復。 在基於VS.NET 2013中的新One ASP.NET模板將jQuery.UI安裝到新的ASP.NET Web表單項目並將此行添加到母版頁中的腳本管理器之后,我得到了同樣的錯誤:

<asp:ScriptReference Name="jquery.ui.combined" />

按照您的說明安裝AspNet.ScriptManager.jQuery.UI.Combined NuGet包后,錯誤立即得到解決。

我有類似的情況,已經有腳本參考(上面),但我還需要確保將dll復制到本地文件夾。

F4在AspNet.ScriptManager.jQuery和AspNet.ScriptManager.jQuery.UI.Combined上並將Copy Local設置為True。

派對可能有點晚了,但我遇到了同樣的問題,並嘗試了許多解決方案,如上所述和其他頁面。 無論引用是什么,我都會在最后一個腳本引用上得到錯誤。 我最終決定刪除所有腳本引用並改為使用bundle。 例如,默認應用程序在bundles.config中具有以下內容:

bundles.Add(new ScriptBundle("~/bundles/MsAjaxJs").Include(
    "~/Scripts/WebForms/MsAjax/MicrosoftAjax.js",

ScriptManager.ScriptResourceMapping.AddDefinition(
    "respond",
    new ScriptResourceDefinition
    {
        Path = "~/Scripts/respond.min.js",
        DebugPath = "~/Scripts/respond.js",
    }
);

所以我更改了“響應”而不是腳本引用:

bundles.Add(new ScriptBundle("~/bundles/respond").Include(
    "~/Scripts/respond-1.4.2.js"));

以及所有其他腳本引用,並將它們添加到母版頁頭:

<asp:PlaceHolder runat="server">
    <%: Scripts.Render("~/bundles/WebFormsJs") %>
    <%: Scripts.Render("~/bundles/MsAjaxJs") %>
    <%: Scripts.Render("~/bundles/jquery") %>
    <%: Scripts.Render("~/bundles/jqueryui") %>
    <%: Scripts.Render("~/bundles/modernizr") %>
    <%: Scripts.Render("~/bundles/respond") %>
</asp:PlaceHolder>

這刪除了錯誤 - 最終在2天后 - 並允許我運行一些基本頁面,包括默認的Register.aspx頁面。 不知道我接下來會遇到什么,但想到我會傳遞這個。

將此添加到您的Web.config,問題將得到解決:

<appSettings>
<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
</appSettings>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM