从mySQL数据库中的值设置Javascript值
我已经彻底地寻找了答案,但没有找到任何能帮我澄清这一点的线索 我正在构建一个简单的webapp,它有一个java/mySQL后端和html/js前端。在我的前端,我使用数据库中的值和chart.js库来可视化数据。我在后端使用Jersey框架,并编写了代码,在传递适当的url时将返回所需的值,例如:从mySQL数据库中的值设置Javascript值,javascript,java,mysql,charts,Javascript,Java,Mysql,Charts,我已经彻底地寻找了答案,但没有找到任何能帮我澄清这一点的线索 我正在构建一个简单的webapp,它有一个java/mySQL后端和html/js前端。在我的前端,我使用数据库中的值和chart.js库来可视化数据。我在后端使用Jersey框架,并编写了代码,在传递适当的url时将返回所需的值,例如: http://localhost:8080/rest/database/chart/get/labels 返回 [“测试”、“测试2”、“测试3”、“测试4”、“测试5”] 我需要向我的图表传递图
http://localhost:8080/rest/database/chart/get/labels
返回
[“测试”、“测试2”、“测试3”、“测试4”、“测试5”]
我需要向我的图表传递图表上轴的名称数组
现在,我的图表轴是带有占位符的名称,由.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的一些变体允许我调用并返回数据库值,并将它们设置为图表轴值,但我究竟如何实现这一点呢
非常感谢您的帮助 如果需要处理来自AJAX的数据,可以更改服务器输出数据的方式。我建议使用JSON——在JS内部和服务器上都很容易使用。 但是,如果需要使用“[“test”、“test2”、“test3”、“test4”、“test5”]”等数据格式,可以尝试使用类似的方法
var myarray=eval('["test","test2","test3","test4","test5"]');
但是记住!Eval可能不安全!请参见谢谢您的帮助!