2

JSON 出力を照会するための PHP ファイルを作成しました。特定のフィルター「testPHP.php?number=123」の PHP ファイルからの JSON 出力は、

[{"source":"AB","target":"AC","type":"true"},{"source":"UB","target":"EP","type":"true"},{"source":"US","target":"UR","type":"lie"},{"source":"BS","target":"QW","type":"lie"},{"source":"UW","target":"EA","type":"lie"}]

JSON出力をリンク変数に読み取るために、htmlファイルでこれを試しました

var links; // a global
d3.json("testPHP.php?number=123", function(error, json) {
  if (error) return console.warn(error);
  links = json;
});

しかし、データはリンクに保存されていないようです。にデータを保存するにはどうすればよいvar linksですか?

var links基本的には、このhttps://gist.github.com/mbostock/1153292を PHP からの JSON 出力に置き換えたいと思います。

編集:またはhttp://localhost:8080問題を引き起こしていますか?

4

2 に答える 2

2

d3.json 呼び出しは非同期です。「リンク」変数が設定される前にコールバックが実行された後に含まれるコード。

var links; // a global
d3.json("testPHP.php?number=123", function(error, json) {
  if (error) return console.warn(error);
  links = json;

  console.log(links); // your links are populated here

  // include the rest of your app here
});

// links is still undefined here because the success callback hasn't been run yet
于 2013-05-12T22:30:49.210 に答える
-1

あなたは書く必要があるでしょうlinks = [{"source":"AB","target":"AC","type":"true"},{"source":"UB","target":"EP","type":"true"},{"source":"US","target":"UR","type":"lie"},{"source":"BS","target":"QW","type":"lie"},{"source":"UW,"target":"EA","type":"lie"}]

その時点で、リンクはその情報を保持します。ただし、配列を検討することもできます。

于 2013-05-12T21:34:26.867 に答える