首页 > 解决方案 > 双引号的Javascript json数据读取问题

问题描述

我正在将 json 数据传递给 Google Chart 的 javascript。我的 json 数据格式是

["Md. Aslam",170972.7,"gold"]

但在谷歌图表 javascript 显示像

["JIANGSU LTD",170972.7,"gold"]

这里显示"" 我需要这些数据,"正如我给出的那样。我该如何解决这个问题?

我的控制器(从数据发送):

def data1 = table.executeQuery("select name, point from table") as JSON
render(view: "/report", model: [data1: data1])

我的 report.gsp(谷歌图表视图):

<script type="text/javascript">
        google.charts.load('current', {'packages':['corechart']});
        google.charts.setOnLoadCallback(drawVisualization);

        function drawVisualization() {
            google.charts.load("current", {packages:['corechart']});
            google.charts.setOnLoadCallback(drawChart);
            function drawChart() {
                var data = google.visualization.arrayToDataTable([
                    [ 'Element', "Density", { role: "style" } ],
                    ${data1}
                ]);

                var view = new google.visualization.DataView(data);
                view.setColumns([0, 1,
                    { calc: "stringify",
                        sourceColumn: 1,
                        type: "string",
                        role: "annotation" },
                    2]);

                var options = {
                    title: "Density of Precious Metals, in g/cm^3",
                    width: 600,
                    height: 400,
                    bar: {groupWidth: "95%"},
                    legend: { position: "none" },
                };
                var chart = new google.visualization.ColumnChart(document.getElementById("ord_variation"));
                chart.draw(view, options);
        }}
    </script>

我正在使用 groovy/grails 3

标签: javascriptjsongrails

解决方案


最后我得到了report.gsp的解决方案

<g:applyCodec encodeAs="none">
    ${data1};
</g:applyCodec>

推荐阅读