我在http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.3使用dojo javascript文件在ASP.NET页面上显示地图。
地图突然停止显示,我遇到了jiz错误,我发布了Getting JavaScript runtime error: irrationalPath, what does it mean?
要调试此问题,我在http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.3制作了一个javascript文件的本地未压缩副本,并在我的应用程序中引用了该副本。
当调用这个dojo javaScript时,我得到以下错误,最终阻止地图显示
JavaScript运行时错误:irrationalPath
在调试过程中,我发现抛出路径的函数在
之下_9b = function (mid, _9c, _9d, _9e, _9f, _a0, _a1, _a2) {
var pid, _a3, _a4, _a5, _a6, url, _a7, _a8, _a9;
_a9 = mid;
_a8 = /^\./.test(mid);
if (/(^\/)|(\:)|(\.js$)/.test(mid) || (_a8 && !_9c)) {
return _81(0, mid, 0, mid);
} else {
mid = _95(_a8 ? (_9c.mid + "/../" + mid) : mid);
if (/^\./.test(mid)) {
debugger;
throw _f("irrationalPath", mid);
}
if (_9c) {
_a6 = _93(_9c.mid, _a0);
}
_a6 = _a6 || _a0.star;
_a6 = _a6 && _93(mid, _a6[1]);
if (_a6) {
mid = _a6[1] + mid.substring(_a6[3]);
}
_70 = mid.match(/^([^\/]+)(\/(.+))?$/);
pid = _70 ? _70[1] : "";
if ((_a3 = _9d[pid])) {
mid = pid + "/" + (_a4 = (_70[3] || _a3.main));
} else {
pid = "";
}
var _aa = 0,
_ab = 0;
_9(_4c, function (_ac) {
var _ad = mid.match(_ac[0]);
if (_ad && _ad.length > _aa) {
_ab = _6(_ac[1]) ? mid.replace(_ac[0], _ac[1]) : _ac[1];
}
});
if (_ab) {
return _9b(_ab, 0, _9d, _9e, _9f, _a0, _a1, _a2);
}
_a7 = _9e[mid];
if (_a7) {
return _a2 ? _81(_a7.pid, _a7.mid, _a7.pack, _a7.url) : _9e[mid];
}
}
_a6 = _93(mid, _a1);
if (_a6) {
url = _a6[1] + mid.substring(_a6[3]);
} else {
if (pid) {
url = _a3.location + "/" + _a4;
} else {
if (has("config-tlmSiblingOfDojo")) {
url = "../" + mid;
} else {
url = mid;
}
}
}
if (!(/(^\/)|(\:)/.test(url))) {
url = _9f + url;
}
url += ".js";
return _81(pid, mid, _a3, _95(url));
}
当我在抛出错误之前在该行放置一个断点时,变量“ mid ”的值将变为“ ../ css / jsapi.css / 。 / x “并且该路径在我的应用程序中不存在,是否必须?
线if (/(^\/)|(\:)|(\.js$)/.test(mid) || (_a8 && !_9c))
实际上做了什么?在我测试的所有时间里它都没有回归。
这个if (/^\./.test(mid))
还在做什么?
这是我第一次触及与道场有关的任何事情,所以如果我不清楚我会道歉,但我总能澄清。
更新 在javascript函数
中的下面一行代码中抛出错误document.getElementById(menu_number).src = "<%=HttpContext.Current.Request.ApplicationPath%>/UI/Common/Images/down-arrow.gif";