2013-02-20 126 views
13

我的ASP.Net项目运行良好,突然发生电源故障。当我运行我的网络应用程序时,它现在显示了很多'jquery'不是有效的脚本名称。该名称必须以'.js'结尾

Could not load assembly Sanitizer..." then "Could not load "HtmlAgility...

错误。我可以通过卸载/使用管理NuGet包解决方案在Visual Studio中2012

重新安装它们可是现在我遇到了另一个错误来解决这些以前的错误:

'jquery' is not a valid script name. The name must end in '.js'."

我试图做同样的事情重新安装包,但它不起作用。我该怎么做才能解决这个问题?我的根\ Scripts文件夹中已经有一个jquery.js文件。我还在我的部分添加了对此文件的引用:

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

但仍然无效。请帮忙。

+1

如果它位于项目的根目录中,则可能需要一个绝对路径:'/ Scripts/jquery.js'。但是,这取决于引用文件的位置。 – Jivings 2013-02-20 07:53:10

+1

我试过了,但它不工作...

1

感谢您发布您的后续答案。在将jQuery.UI安装到基于VS.NET 2013中的新ASP.NET ASP.NET模板的新ASP.NET Web窗体项目中并将此行添加到母版页的脚本管理器后,我得到了同样的错误:

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

如您所述安装了AspNet.ScriptManager.jQuery.UI.Combined NuGet包之后,立即解决了该错误。

+0

你是如何解决这个问题的?NuGet安装顺序是什么? – MC9000 2014-04-09 22:21:49

1

我有类似的情况,已经有脚本引用(上面),但我也需要确保dll被复制到本地文件夹。

F4上的AspNet.ScriptManager.jQuery和AspNet.ScriptManager.jQuery.UI.Combined并设置复制本地为True。

2

我有类似的情况,但我试图更新DotNetOpenAuth.Core后发生了。首先它说我需要更新NuGet,这是我做的,然后我更新了OpenAuth。之后,我开始获得“'jquery'不是有效的脚本名称,名称必须以'.js'结尾。”

如果我删除行加入jQuery的包,它会发生在jQuery的UI等

我卸载并重新安装AspNet.ScriptManager.jQuery和AspNet.ScriptManager.Bootstrap两种封装(因为它最终会抱怨),并且仍然没有运气。

我做的最后一步是从软件包管理器控制台卸载并重新安装AjaxControlToolkit,并为我解决了这个问题。

-2

将此项添加到您的网站。配置和问题将得到解决:

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

这里是工作的解决方案

Open Global.asax in your solution

下面的代码复制只是相应地修改您的jQuery的版本,并将其粘贴Global.asax

 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 
    }); 
3

Application_Start事件中就我而言,我必须添加这两个dll作为我的项目的参考。

enter image description here

3

右键单击您的项目并转到管理的NuGet包,然后只需安装

AspNet.ScriptManager.jQuery.UI.Combined

AspNet.ScriptManager.jQuery

0

可能晚了一点,但我有同样的问题,并尝试了以上和其他网页上的许多解决方案。无论引用是什么,我都会在最后一个脚本引用中看到错误。我终于决定删除所有的脚本引用,并使用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页面。我不确定接下来会遇到什么,但是我认为我会传递这一点。

相关问题