我如何使用JavaScript来解析Ruby JSON字符串
我正在尝试从Rails应用程序的JSON输出字符串中获取JSON对象。 目前在JavaScript我正在做:
data = "";
但是,由于JSON对象的开头和结尾都有引号,因此它不会呈现为JSON对象。 相反,它正在做类似的事情
data = "[{"name":"YHet","organism_id":"4ea9b90e859723d3f7000037"}]"
有没有办法可以删除开头和结尾的引号,以便将对象视为数组而不是字符串?
你为什么不这样做:
data = <%= @chromosomes.html_safe %>;
边注:
我希望你做的事情如下:
@chromosomes = [{ name: "YHet", organism_id: "foo" }].to_json
如果您使用的是jQuery,则可以执行以下操作
var data = jQuery.parseJSON('[{"name":"YHet","organism_id":"4ea9b90e859723d3f7000037"}]');
使用eval:
var dataObject = eval(’(’+ dataString +’)’);
使用大多数浏览器中包含的JSON
对象,或者如果使用jQuery,则使用$.jsonParse
方法尝试使用JSON
对象,否则使用eval
或更安全的方式解析。
在控制器上
@my_var = MyObj.find_by_id(4).to_json
在页面上以haml方式。
var my_json = $.parseJSON("#{j @my_var}"); //used JQuery to parser JSON string