2

我创建了一个 PHP 文件来查询 JSON 输出。特定过滤器“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"}]

我已经在 html 文件中尝试过将 JSON 输出读取到链接变量

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 回答