在Dojo进行轮子

时间:2012-03-20 08:48:50

标签: dojo

dojo / dijit小部件是否有“进行中”轮?

我的json请求需要相当长的时间,我应该向用户显示正在进行的操作。

谢谢!

1 个答案:

答案 0 :(得分:1)

我使用StandBy小部件来执行此操作。以下代码段显示了如何操作。代码有点陈旧,并没有使用Philippe提到的延迟技术,但你可以很容易地这样做。

var url = ...

var xhrArgs = {
    url: url,
    handleAs: "text",
    load: dojo.hitch(this, function(data) {

      this._standby.hide();

      ... do work ...                   

    }),
    error: dojo.hitch(this, function(error){
      this._standby.hide();
      throw error;
    })
};

if (!this._standby) {
    this._standby = new dojox.widget.Standby({
      target: this.domNode
    });
    dojo.body().appendChild(this._standby.domNode);
}

this._standby.show();
dojo.xhrPost(xhrArgs);