You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

添加RequiredFieldValidator触发“jquery不是有效脚本名”错误求助

问题分析与解决方法

可能的错误原因

  • NuGet包安装后,web.config中的脚本资源映射未正确配置,导致系统无法识别jquery为预注册的资源名称,误将其当作普通文件名(缺少.js后缀)。
  • ScriptManager/ScriptManagerProxy中引用jQuery时未指定正确的Assembly属性,导致资源解析失败。
  • 项目存在缓存或编译残留,引发资源识别异常。
  • AspNet.ScriptManager.jQuery包版本与jQuery 3.7.1不兼容。

可行解决方法

1. 验证web.config的脚本资源映射配置

打开项目根目录的web.config,检查<system.web>下是否存在正确的资源映射配置:

<system.web>
  <!-- 其他配置 -->
  <scripting>
    <scriptResourceMapping>
      <add name="jquery" path="Scripts/jquery-3.7.1.min.js" type="" />
    </scriptResourceMapping>
    <resourceProviders>
      <add name="AspNet.ScriptManager.jQuery" type="Microsoft.Web.Handlers.ScriptResourceHandler, Microsoft.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    </resourceProviders>
  </scripting>
</system.web>

如果配置缺失,手动添加上述节点;若已存在,确认path指向的脚本文件路径与实际项目中的jQuery文件一致。

2. 修正ScriptReference的引用方式

在UserControl的ScriptManagerProxy中,明确指定Assembly属性,确保系统识别为预注册资源:

<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
  <Scripts>
    <asp:ScriptReference Name="jquery" Assembly="AspNet.ScriptManager.jQuery" />
  </Scripts>
</asp:ScriptManagerProxy>

若仍报错,可直接引用本地脚本文件替代资源名称:

<asp:ScriptReference Path="~/Scripts/jquery-3.7.1.min.js" />

3. 清理项目缓存并重新生成

  • 删除项目根目录下的bin和obj文件夹。
  • 在Visual Studio中执行清理解决方案,再执行重新生成解决方案。

4. 检查并更新NuGet包兼容性

  • 卸载并重新安装AspNet.ScriptManager.jQuery包,确保安装过程中自动配置web.config。
  • 确认安装的AspNet.ScriptManager.jQuery版本支持jQuery 3.7.1,若版本过旧,更新至兼容.NET 4.7.2的最新版本。

5. 排查重复引用冲突

检查父页面的ScriptManager是否已引用jQuery,避免UserControl与父页面的重复引用导致解析异常。


内容的提问来源于stack exchange,提问作者Lorenzo Santarelli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 03:52:14