从mySQL数据库中的值设置Javascript值

从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”] 我需要向我的图表传递图

我已经彻底地寻找了答案,但没有找到任何能帮我澄清这一点的线索

我正在构建一个简单的webapp,它有一个java/mySQL后端和html/js前端。在我的前端,我使用数据库中的值和chart.js库来可视化数据。我在后端使用Jersey框架,并编写了代码,在传递适当的url时将返回所需的值,例如:

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可能不安全!请参见

谢谢您的帮助!