Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检查javascript包含文件中的错误并解决问题_Javascript_Arrays - Fatal编程技术网

检查javascript包含文件中的错误并解决问题

检查javascript包含文件中的错误并解决问题,javascript,arrays,Javascript,Arrays,对于我们网站上的选择框,我们将ajax调用请求更改为javascript数组文件,该文件用于填充城市选择框选项。现在,这些都是从只包含js数组的同一个文件中填充的 这个仅js的数组文件在其他服务器上动态创建,并传输到静态服务器。大多数情况下,它工作正常,但偶尔会失败,文件损坏或未完全传输。在这种情况下,文件内容如下所示 var cityArray = [{SID : "15",SN : "Rajasthan",cities : [{CID : "677",CN : "Jaipur"}, //sy

对于我们网站上的选择框,我们将ajax调用请求更改为javascript数组文件,该文件用于填充城市选择框选项。现在,这些都是从只包含js数组的同一个文件中填充的

这个仅js的数组文件在其他服务器上动态创建,并传输到静态服务器。大多数情况下,它工作正常,但偶尔会失败,文件损坏或未完全传输。在这种情况下,文件内容如下所示

var cityArray = [{SID : "15",SN : "Rajasthan",cities : [{CID : "677",CN : "Jaipur"}, //syntax error, no eol
因此,当我们尝试使用这个文件时,所有的js都停止工作

我这里的问题是如何检查包含的文件是否包含错误,并使用旧方法填充选择框选项

提前谢谢。

我想骗你一点:

  • 使用
    XMLHttpRequest
    以字符串形式获取文件副本,而不是添加
    标记
  • 检查字符串是否有下线,如果没有-添加一个
  • Eval()
    try-catch语句中的字符串

这不仅可以让您使用特定类型的“损坏”文件,而且如果脚本以其他方式损坏,您的脚本也不会崩溃。

XMLHttpRequest的浏览器兼容性如何?@user2319984,取决于您需要返回的距离。所有“现代”浏览器都支持它(包括移动设备),IE5/6您需要一个小的变通方法来使用,但也可以。IE7和更新版本都可以。如果您碰巧正在使用jQuery,那么它也会使它变得更容易一些。