我们在一个主要的.js
文件中有一个JavaScript / AJAX调用,它在IE 9中运行良好,但在Firefox 24.6中却很糟糕。该函数应该从指定区域加载各种文件夹并在页面上显示它们。这是代码的样子:
folders.load({
url: url,
callback: function(records, operation, success) {
LINE 732 --> if (records.length == 0) {
store.tree.root.set("text", "No Documents Available");
}
for (var i = 0; i < records.length; i++) {
buildNode(records[i]);
}
buildDocumentGrid();
store.sort();
treePanel.openDirectory(new queryString().get("directory", null));
}
});
页面在IE中加载完全正常。但是当我们在Firefox中尝试时,我们会将此错误发送到控制台:
TypeError: records is null
http://www.example.com/public/site/js/committee-docs.js
Line 732
records
没有理由为null,但是当添加断点时,它实际上是空的。在IE中使用完全相同的URL可以获得成功。是否存在IE选择完全忽略但导致Firefox出现问题的某种规则?该错误不会出现在IE控制台中,只有Firefox。
我的问题是为什么在IE中而不是在FF中发生此错误?它是相同的代码,if (records.length == 0) {
用于处理空结果。以下是控制台的错误输出:
TypeError: records is null committee-docs.js (line 732)
"NetworkError: 403 Forbidden - http://www.example.com/public/data/load/rt_zonal.jsp"
rt_zonal.jsp
"NetworkError: 403 Forbidden - http://www.example.com/public/data/lbmp/rt_zonal.jsp"
rt_zonal.jsp
"NetworkError: 404 Not Found - http://www.example.com/_vti_bin/MetaDataDoc/MetaDoc.svc/getfolders/?folder=%2Fsecure%2Fwebdocs%2Fmarkets_operations%2Fcommittees%2Foc%2Fmeeting_materials&_dc=1408707654820&page=1&start=0&limit=25"
?folde...imit=25
TypeError: records is null
if (records.length == 0) {
"NetworkError: 404 Not Found - http://server:10190/crossdomain.xml"