动态地将json添加到spacetree视图

时间:2012-12-18 06:13:19

标签: javascript jquery ruby-on-rails infovis

我正在使用spacetree js来显示树视图。

我想在点击节点后按需加载json。

我已经使用硬编码的json值运行了示例示例。

但我没有得到如何使它动态.....  选择节点后,显示他们的孩子并保留他们的父母。 我有两个问题

如何制作

1.重新加载整个json对象

2或将选定的儿童json添加到之前的json对象

我需要这个例子.. 我正在使用ruby on rails进行应用程序,因此是他们制作自定义json的任何方法

1 个答案:

答案 0 :(得分:0)

代替示例中的硬编码JSON对象,您可以使用jQuery.getJSON()方法或$.ajax()之类的东西从远程服务器加载JSON。会是这样的:

$.ajax({
  url: '/tree/structure',
  type: 'GET',
  dataType: 'JSON',
  success: function(data) {
    json = $.parseJSON(data);
  }
});

因此在Rails中,您可以创建一个控制器来返回JSON响应,如下所示:

def treedata
  @tree = Tree.create() # object with tree structure

  respond_to do |f|
    f.json{ render :json => @tree }
  end
end

希望上述内容有所帮助。