var data = [
{label: "a Organinzation",data: 1},
{label: "b pvt Ltd.",data: 2},
{label: "d Organization",data: 10},
{label: "Completed Organization",data: 15},
{label: "Running Organization",data: 34}
];
我的 jsp 页面中有一个 jqplot 饼图,它采用上述格式获取数据。现在我的问题是它与静态数据一起工作得很好。但是当我想包含一些动态数据时。它显示空白图表,因为此数据变量无法解析我提供的字符串...
正在生成与上面代码片段中指定的相同的字符串,并具有以下内容
var total = rawdata.split(";");
var txt = null;
for (var i = 1; i < total.length - 1; i++) {
if (i == 1) {
txt = "{ label: \"" + total[i] + "\", data: " + total[i + 1] + "}";
} else {
txt = txt + ", { label: \"" + total[i] + "\", data: " + total[i + 1] + "}";
}
i++;
}
alert(txt);
elem = $('#fl_3');
var data = [JSON.parse(txt)];
当我提醒 txt 变量时,它给了我以下模式,这与我最初给出的代码片段相同......
{ label: "Abc LTd.", data: 42},
{ label: "A org", data: 2},
{ label: "B Org", data: 6},
{ label: "c Org", data: 1},
{ label: "dbc comp ltd", data: 1},
{ label: "avc comp pvt. ltd", data: 1}
那为什么它不能将其解析为json?在我的浏览器中,我收到了这个错误:
Error: SyntaxError: JSON.parse: expected property name or '}'
如果我写data=[txt];
,什么都不会出现。
如果我写data = [JSON.parse(txt)];
然后我得到错误..
有人可以帮我吗?我怎样才能让这个运行?