你好朋友我有jquery json的一些问题。以下是我的Json:
var dataSet2=[{"label":"Label 1","data":"[[1,10],[2,20],[3,10],[4,25],[5,15],[6,20],[7,40]]","color":"#3498db"},{"label":"Label 2","data":"[[1,15],[2,30],[3,25],[4,55],[5,30],[6,45],[7,50]]","color":"#e74c3c"}]
我希望我的Json喜欢:
var dataSet2=[{"label":"Label 1","data":[[1,10],[2,20],[3,10],[4,25],[5,15],[6,20],[7,40]],"color":"#3498db"},{"label":"Label 2","data":[[1,15],[2,30],[3,25],[4,55],[5,30],[6,45],[7,50]],"color":"#e74c3c"}]
需要删除双引号
"[[1,10],[2,20],[3,10],[4,25],[5,15],[6,20],[7,40]]"
"[[1,15],[2,30],[3,25],[4,55],[5,30],[6,45],[7,50]]"
我已经完成了替换字符串选项,但它没有使用我的var dataSet2。
。你的帮助会很明显。提前致谢
答案 0 :(得分:1)
您需要做的不是"删除双引号"。您需要(a)解析字符串形式的JSON数组,或者(b)首先生成正确的JSON。
您还没有向我们展示您的任何C#代码,因此我无法帮助您(b),但对于(a),您可以执行此操作:
var dataSet2 = [
{"label": "Label 1", "data": "[[1,10],[2,20],[3,10],[4,25],[5,15],[6,20],[7,40]]", "color": "#3498db"},
{"label": "Label 2", "data": "[[1,15],[2,30],[3,25],[4,55],[5,30],[6,45],[7,50]]", "color": "#e74c3c"}
];
// parse and replace .data properties
dataSet2.forEach(function(item) {
item.data = JSON.parse(item.data);
});
console.log(dataSet2);

答案 1 :(得分:0)
你的json字符串无论如何都不会工作......(你必须在开头和结尾都有双引号)
试试这个:
string json = "[{\"label\":\"Label 1\",\"data\":[[1,10],[2,20],[3,10],[4,25],[5,15],[6,20],[7,40]],\"color\":\"#3498db\"},{\"label\":\"Label 2\",\"data\":[[1,15],[2,30],[3,25],[4,55],[5,30],[6,45],[7,50]],\"color\":\"#e74c3c\"}]";
使用JSON formatter从中获取转义(可用)字符串。