需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping"解决方案

转载自  http://blog.csdn.net/ayang1986/article/details/45042909

错误信息:

 

WebForms UnobtrusiveValidationMode 需要“jQuery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping。说明:执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。           

异常详细信息: System.InvalidOperationException: WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping。

源错误:

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。


堆栈跟踪:

[InvalidOperationException: WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping。]
   System.Web.UI.ClientScriptManager.EnsureJqueryRegistered() +2365285
   System.Web.UI.WebControls.BaseValidator.RegisterUnobtrusiveScript() +11
   System.Web.UI.WebControls.BaseValidator.OnPreRender(EventArgs e) +9641449
   System.Web.UI.Control.PreRenderRecursiveInternal() +83
   System.Web.UI.Control.PreRenderRecursiveInternal() +155
   System.Web.UI.Control.PreRenderRecursiveInternal() +155
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +974


 


版本信息: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.5.27.0           

 

解决方法如下

方法一:        

修改Web.config文件如下:

<configuration>

  <appSettings>

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

  </appSettings>

      

……

</configuration>

 

方法二:

修改全局应用程序类Global.asax

1.    添加程序集引用:usingSystem.Web.UI;

2.    在类Global的Application_Start方法中添加如下代码:

ScriptManager.ScriptResourceMapping.AddDefinition("jquery",

     new ScriptResourceDefinition

     {

        Path = "~/scripts/jquery-1.7.2.min.js",

        DebugPath = "~/scripts/jquery-1.7.2.min.js",

        CdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.1.min.js",

        CdnDebugPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.1.js"

     }

);

3.    在解决方案项目目录下新建scripts文件夹,放入文件jquery-1.7.2.min.js

 

以下两种方法仅供参考,对理解错误产生的原因有帮助!

方法三:

aspx页面的Page_Load方法中添加如下代码:

UnobtrusiveValidationMode = UnobtrusiveValidationMode.None;

 

方法四:

把文件AspNet.ScriptManager.jQuery.dll添加到项目的引用中。该方法可以消除错误,但是会导致验证控件不起作用。


我使用的是方法三,但最好的方法应该是方法二

方法二,另一个博主写的更详细:http://blog.csdn.net/zhangxiao93/article/details/46347587

最终解决问题的办法
1.下载jquery_1.7并解压出jquery-1.7.2.js和jquery-1.7.2.min.js文件

2.在网页项目的根目录创建文件夹scripts并将上述文件复制进去

3.在项目中添加全局应用程序类Global.asax文件,在Application_Start事件中添加如下代码:
        
    ScriptManager.ScriptResourceMapping.AddDefinition("jquery", new ScriptResourceDefinition  
            {  
                Path = "~/scripts/jquery-1.7.2.min.js",  
                DebugPath = "~/scripts/jquery-1.7.2.js",  
                CdnPath = "http://ajax.microsoft.com/ajax/jQuery/jquery-1.7.2.min.js",  
                CdnDebugPath = "http://ajax.microsoft.com/ajax/jQuery/jquery-1.7.2.js"  
            });  



注:需要在Global.asax文件中添加下述语句(包含ScriptManager类)

  1. using System.Web.UI; 



  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值