使用Ajax for Cytoscape抓取json数据

时间:2014-03-11 14:20:42

标签: javascript jquery ajax json cytoscape-web

我正在尝试使用Cytoscape web(或者如果可能的话,使用cytoscape.js)发布一个网络。由于我的数据很安静,我更喜欢从Cytoscape桌面导出它并在我的html中用ajax抓取它。在最后一个版本的Cytoscape(v.3.1.0)之前,我能够使用以下方式导出.xml格式的网络:

$.ajax({
type: "GET",
url: "data.xml",
dataType: "xml",
error: function(){
alert("Error loading file");
},
success: function(data){
data = (new XMLSerializer()).serializeToString(data); 
});
vis.draw({ network: data });

它工作得很好。

当我尝试用.json(从.xml转换或从Cytoscape桌面导出为.cyjs)做同样的事情时,它不起作用。我使用了类似的代码:

    $.ajax({
            type: "GET",
            url: "data.json",
            dataType: "json",
                        error: function(){
                alert("Error loading file");
            },
success: function(data){
}
});
var netwdata = data.elements[0];
vis.draw({ network: netwdata });

虽然我没有收到加载错误,但现在没有绘制网络。我没有.json的经验所以我确信我错过了一些东西。欢迎任何帮助或评论。

1 个答案:

答案 0 :(得分:0)

我认为您没有为json数据编写序列化程序。简单来说,你没有将json对象转换为字符串。就像你用于xml:

data = (new XMLSerializer()).serializeToString(data);