【问题标题】:how assign json data to JIT spacetree from ActionResult mvc如何从 ActionResult mvc 将 json 数据分配给 JIT spacetree
【发布时间】:2013-11-08 11:46:16
【问题描述】:

我正在构建一个 JIT 空间树,如下所示: http://philogb.github.io/jit/static/v20/Jit/Examples/Spacetree/example1.html

我需要使用来自 MVC 中数据库表的数据为其构建动态 Json。

目前我调用ActionResult如下:

 var url = "@Url.Action("BinaryTreeData", "Dashboard")";
$.post(url, {}, function (data, status) {
            var json1 = $.parseJSON(data.html);
            alert(json1.bar);
        });

如何在 ActionResult 中构建动态 Json 并将其分配给树?

【问题讨论】:

    标签: c# json infovis thejit space-tree


    【解决方案1】:

    使用 jquery ajax 方法并指定 json 作为预期答案的类型。在服务器端,您可以返回 JsonResult 或以更通用的方式使用 javascript 序列化程序,甚至可能定义您自己的操作结果(这可能很有用,具体取决于您还需要做什么)。 .NET 中的序列化程序能够通过不同类型序列化各种对象 graf,但这完全取决于从数据库中提取的数据的结构(我无法准确猜出你在那里拥有什么)。不过,我认为您可以开始这条道路并在文档中找到大多数答案,但要小心 - .NET JSON 序列化程序在灰色 JSON 区域(如日期时间格式)中有一些细节。

    【讨论】:

      【解决方案2】:

      是的,你可以像我一样做到这一点。我也是这样做的:

      调用initialiseData() 而不是init()

      function initialiseData(){
          url = //your file path
          $.ajax({
              url: url,
              type: 'GET',
              datatype: "html",
              success: function(data) {
                  init(data);
              },
              error: function(e) {
                  console.log(e.message);
              }
          });
          }
      

      将您的 init() 函数更改为此。

      init(json){
        ...
      }
      

      它会起作用的。

      注意:您必须具有示例中给出的准确 json 格式。

      【讨论】:

        猜你喜欢
        • 2012-07-01
        • 2013-11-08
        • 2012-10-21
        • 2013-10-08
        • 2012-10-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-15
        相关资源
        最近更新 更多