我们已经完成了与该问题相关的其他条目。但它似乎无法解决我的问题。我试图加载一个页面,并有一个加载图形的js函数。当试图访问本地部署的应用程序时,它工作正常,没有任何错误。但是当试图访问链接(部署在服务器中的同一个应用程序的页面)时,我们得到错误Uncaught TypeError:无法读取属性&to; toCower'未定义的
function show_vis(tower, cluster, product,region,all_application, flag)
{
document.getElementById('heat-chart').innerHTML='';
var appList = [];
var app_corr = [];
var indexarr = new Array();
// second issue fixed....
tower = encodeURIComponent(tower);
cluster = encodeURIComponent(cluster);
product = encodeURIComponent(product);
region = encodeURIComponent(region);
flag = encodeURIComponent(flag);
$.get("Dashboard_Core_Analysis.jsp?tower=" + tower
+ "&cluster=" + cluster +"®ion="+region+ "&product=" + product + "&default=" +flag, function(data, status) {
appList=data.trim().split('\r\n');
if(appList.length != 1 ){
for(var i = 1 ; i < all_application.length ; i++)
{
for(var j = 0 ; j < appList.length ; j++)
{
**if (all_application[i][1].toLowerCase() == appList[j].toLowerCase())**
{
indexarr.push(all_application[i][0]);
app_corr.push(all_application[i][1]);
}
}
}
buildHeatMap(app_corr, indexarr, flag);
}
else
{
document.getElementById('heat-chart').innerHTML='<div style="Margin-top:50px; text-align:center;">No Data to Display</div>';
document.getElementById('tag-cloud').innerHTML='';
document.getElementById('area-chart1').innerHTML='';
document.getElementById('area-chart2').innerHTML='';
}
});
} 我甚至调试了代码并保持警报,以检查是否正在为all_application和amp填充值。 APPLIST。价值正在变得很好。以下是值
all_application值
index,application_name,
1,Friday Daily Jobs WK1,
2,Monday Additional Jobs,
3,Monday Daily Jobs,
4,Non Daily Jobs,
5,NonBATCHNDC Daily Jobs,
6,Others,
7,Tue-Fri Daily,
appList值
Monday Daily Jobs,Non Daily Jobs,Tue-Fri Daily,Friday Daily Jobs WK1,Monday Additional Jobs,NonBATCHNDC Daily Jobs,Others
上面是被调用的函数,它加载了一个图形。在上面的方法中,当突出显示的行被调用时,应用程序通过未被捕获的TypeError。
当在tomcat服务器中本地部署应用程序时,相同的代码可以正常工作。我不确定缺少什么。对此有任何帮助非常感谢。
答案 0 :(得分:1)
根据问题评论中的讨论,问题是数据来自csv文件,此文件有空格,末尾有一个空行,导致数组添加空值。
从csv中提取数据的某些库或手工制作的代码不会检查空行,这可能会导致类似问题中出现的问题,因此您必须确保修剪csv文件或使用检查空行的代码