-1

我使用 Kendo ui dataviz 创建了一个柱形图。在我的程序中,我要将本地 Javascript 数组变量数据绑定到图表数据源。JSON 数据像“3”“9”“6”一样被“396”分割。我不知道为什么会这样。我的源代码受到打击。请检查并请给出解决方案。

资源:

/**************Variable Declaration**********************************/
var eligibilityData = new Array();
eligibilityData = {
    mem_status: {
        a: 396, b: "56", c: "1125", d: "8423"
    }
};

/**************Create Chart**********************************/
function createBarChart(eligibilityData) {
    /****** Issue: A value is 396 but it spilted into "3","9","6"************/
    $("#Chart1").kendoChart({
        theme         : $(document).data("kendoSkin") || "default",
        dataSource    : {
            data: JSON.stringify(eligibilityData.mem_status.a),
        },
        seriesDefaults: { type: "column", },
        series        : [
            { field: "a", name : "A" }
        ],
        tooltip       : { visible: true, },
    });
}
4

2 回答 2

1

本地数据应作为数组传递。无需调用 JSON.stringify

data: [eligibilityData.mem_status]

请参阅:http ://docs.kendoui.c​​om/api/framework/datasource#configuration-data-Array

于 2013-03-22T08:36:18.887 回答
0

JSON.stringify不符合您的预期。你这句话真正做的是:

  1. 它获取number396 并将其转换为string.
  2. 将 astring转换为每个元素一个字符的 an array

不确定您定义的方式DataSource(为什么您想要 aDataSource只有一个元素)但如果这确实是您想要的,您可以尝试:

dataSource    : {
    data: [eligibilityData.mem_status.a]
},

或者

dataSource    : {
    data: [eligibilityData.mem_status]
},
于 2013-03-22T08:45:00.337 回答