ASP.NET MVC AJAX Sys是未定义的错误

当我尝试 AJAX调用时,我在MVC应用程序中的某个页面上收到“Microsoft JScript运行时错误:’Sys’未定义”错误. AJAX调用是从部分视图中进行的,该视图嵌入在多个页面中.它可以在除一个页面之外的所有页面上正常工作.我已经阅读了指向web.config文件设置和.axd映射的帖子作为可能的解决方案,但是在web.config中正确配置了应用程序,并且IIS中的.axd映射也是正确的.此外,它可以在使用此局部视图的所有页面上正常工作,除了一个.它表现得像AJAX库没有加载这一页.

对脚本文件的引用位于共享的site.master文件中.所有页面(包括不起作用的页面)都引用相同的母版页.

有任何想法吗?我已经在这个工作了两天了.谢谢.

编辑:正如Sam在下面指出的那样,似乎AJAX调用在AJAX库有机会加载之前就已经开始了.但是,AJAX调用是在页面呈现后很长时间由提交按钮触发的,因此AJAX库有足够的时间加载 – 抱歉第一次没有提供足够的信息.

解决方法

在Firefox中加载页面,然后使用Firebug检查页面 – 您将能够看到已加载的所有单个脚本,以及发出的所有网络请求,以及它们是否成功.这比尝试从服务器角度进行故障排除要好.

如果您使用的是IE8,则可以使用Developer Tools窗口,但我认为Firebug更好 – 两种工具都支持JavaScript调试.

最可能的问题是您在部分视图中运行脚本,然后它依赖的脚本才有可能加载 – 确保您在局部视图中调用的任何脚本调用只会在页面加载后运行,并且在装载期间不会立即

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....