【问题标题】:d3 xhr adding loading cursord3 xhr 添加加载光标
【发布时间】:2013-12-28 21:36:33
【问题描述】:

我正在尝试从

发出 xmlhttprequest
d3.xhr("Data-mapper?Function-name=tree-data", "application/json", function (i,d){
    console.log(d);
    return d;
});

我也可以获取响应数据,但我想知道是否可以在调用时添加加载光标..或进度条...

我还想问的一件事是,当我们调用从服务器端获取数据时,我们如何发送数据,即

d3.json(...) or d3.xhr(...)

【问题讨论】:

  • acutally 想在我拨打电话d3.xhr("DataMapper?function-name=PieChart","application/json", function(i,d){ jsondata=JSON.parse(d.response); console.log("inside "+jsondata); return d.response; }); console.log("jsondata "+jsondata); 时再问一个问题,我现在已将其保存在 html 脚本中。问题是我能够在函数内部获取数据,但是当我尝试在外部功能我没有得到数据。但是如果我将相同的代码粘贴到 chrome 的控制台中,我可以同时看到这两个数据。为什么会这样??

标签: javascript ajax json d3.js


【解决方案1】:

HTML

<pre id='pre'>loading...</pre>

JS

d3.json("http://filltext.com/?rows=5&fname={firstName}&lname={lastName}&delay=10", function (err, data){
    var pre = document.getElementById('pre');
    pre.innerHTML = JSON.stringify(d, null, 4);
    console.log(data);
});

JSFIDDLE Demo

【讨论】:

    【解决方案2】:

    您可以通过在开头添加并在回调中删除来添加“加载”屏幕:

    addLoadingScreen();
    d3.json(..., function(error, data) {
      // do something
      removeLoadingScreen();
    });
    

    我已经使用了这种技术here

    要回答您的第二个问题,您可以将参数作为 GET 参数传递:

    d3.json("http://www.foo.com/script?parameterA=foo&parameterB=bar", function(error, data) {
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-05
      • 1970-01-01
      • 2020-04-27
      • 1970-01-01
      • 1970-01-01
      • 2017-11-24
      相关资源
      最近更新 更多