我有一个 C# 方法,可以生成 Google 图表所需的 JSON 字符串。其输出看起来有点像这样:
[ [{ v: 'Mike', f: 'Mike' }, '', 'The President'], [{ v: 'Jim', f: 'Jim Vice President' }, 'Mike', 'VP'], ['Alice', 'Mike', ''], ['Bob', 'Jim', 'Bob Sponge'], ['Carol', 'Bob', ''] ]
我尝试使用 getJSON
和返回 JsonResult
的方法从 Javascript 中检索此数据。但是,Javascript 不会(正确地)将其解析为数组,因为我使用的是字符串。
如何克服这个问题?我想我应该从数组生成 C# JsonResult,因为这就是数据。然而,Google 的格式并不完全适合这种情况......
提前致谢。
最佳答案
如果文本无法成为有效的 JSON,您可能需要使用 eval
...
var arr = eval(response_string);
或者使用 Function
构造函数对其进行评估...
var arr = Function('return ' + response_string)();
...但在这两种情况下,请确保您信任正在发送的数据。
这两种技术都会将字符串评估为 JavaScript 代码,因此只要 JavaScript 语法有效,发送的任何内容都将运行。
关于c# - 生成 Google Chart JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9105455/