XML不能是整个程序

当我包含以下js文件(其中包含jquery)时,我在Firebug中收到错误“XML不能是整个程序”

JS文件包含参考:

 

JS文件内容:

 $("[id*='txtAddress1S']") .blur(function(){ $("[id*='txtAddress1S']") .val().match( /\b[p]*(ost)*\.*\s*[o|0]*(ffice)*\.*\s*b[o|0]x\b/i)&& (alert("Packages are not deliverable to a Post Office Box. \nPlease provide a different shipping address."), $("[id*='txtAddress1S']").focus()) }); 

提前致谢!

可能是你的脚本src属性没有用~正确理解,而是被解析为一个空的标签。 使用javascript文件的完整路径,或相对于其加载的页面的路径:

   

出于某种原因,您的脚本文件被Firefox视为XML文件。 我的猜测是你在Javascript文件中包含了script标记。 例如

  

您不需要外部JS文件中的script标记。

Chrome中的等效错误是

未捕获的SyntaxError:意外的令牌<

我发现另一个原因是"XML can't be the whole program FF中"XML can't be the whole programUncaught SyntaxError: Unexpected token < Chrome中的Uncaught SyntaxError: Unexpected token < 。在我的情况下,一切都失败了ScriptResource.axd

原因是我正在从https提供一些页面,我有一个经理在http和https请求之间切换,具体取决于当前需要的内容。 由于配置不正确,管理器始终通过http服务ScriptResource.axd,这导致https页面出错。

我今天遇到了同样的错误。 在我的情况下,这是因为我在执行AJAX请求时没有在我的URL中使用HTML代码作为特殊字符。 例如…

使用& 而不是使用

从臀部拍摄:我实际上遇到了这个错误,因为我在IIS 5.1 / WinXP中为aspnet_isapi.dll添加了一个通配符映射(用于一些与MVC相关的工作)。 这意味着IIS以不同的方式处理.js文件。 删除映射后,您描述的错误消失了。

刚出现同样的错误。 确保javascript包含文件不包含