【发布时间】:2016-07-03 06:12:50
【问题描述】:
我已经彻底搜索了答案,但无法找到任何可以为我解决问题的东西。
我正在构建一个简单的 web 应用程序,它具有 java/mySQL 后端和 html/js 前端。在我的前端,我将数据库中的值与 chart.js 库一起使用来可视化数据。我在后端使用 Jersey 框架,并编写了在传递适当的 url 时将返回所需值的代码 - 例如:
http://localhost:8080/rest/database/chart/get/labels
返回
["test","test2","test3","test4","test5"]
我需要向我的图表传递图表上轴的名称数组。
现在,我的图表轴是带有占位符的名称,由 .js 脚本决定:
function loadChartLabels() {
var xhttp = new XMLHttpRequest();
var returnArray = [];
xhttp.onreadystatechange = function () {
if (xhttp.readyState == 4 && xhttp.status == 200) {
returnArray = xhttp.responseText;
}
};
xhttp.open("GET", "http://localhost:8080/rest/database/chart/get/labels", true);
xhttp.send();
return ["Eating", "Drinking", "21Test", "21Test1", "21Test2", "21Test3", "21Test4"];
//window.alert(returnArray.toString);
//return returnArray;
}
这是我的图表脚本:
var testArray = loadChartLabels();
var radarData = {
labels: testArray,
datasets: [
{
label: "My First dataset",
fillColor: "rgba(140,70,120,0.5)",
strokeColor: "#ACC26D",
pointColor: "#fff",
pointStrokeColor: "#9DB86D",
data: [65, 59, 90, 81, 56, 55, 40]
},
{
label: "My Second dataset",
fillColor: "rgba(172,194,132,0.4)",
strokeColor: "#ACC26D",
pointColor: "#fff",
pointStrokeColor: "#9DB86D",
data: [28, 48, 40, 19, 96, 27, 100]
}
]
};
var habits = document.getElementById("habits").getContext("2d");
new Chart(habits).Radar(radarData);
我假设 AJAX 的某些变体将允许我调用并返回数据库值并将它们设置为图表轴值,但我究竟该如何实现呢?
非常感谢任何帮助!
【问题讨论】:
标签: javascript java mysql charts