扩展部分

时间:2016-11-15 16:38:43

标签: xpages xpages-extlib

在我的XPage应用程序中,我正在使用xe:dynamicViewPanel控件,并希望在用户展开某个部分时添加待机/等待对话框/弹出窗口(单击展开图标以打开该部分)。 有时视图索引不是最新的,打开一个包含大量文档的类别会持续一段时间,同时我想显示一些"加载对话框" (我已经拥有,因此,无需解释如何执行此操作)。 我的问题是,我找不到任何事件或入口点从哪里开始。

谢谢大家! 亚历

1 个答案:

答案 0 :(得分:1)

您可以尝试以下链接中的代码: https://openntf.org/XSnippets.nsf/snippet.xsp?id=standby-dialog-custom-control

如果要在当前部分显示stanby对话框,请替换79行

var forms=dojo.body() 

与其他一些容器。例如,部分刷新元素

var forms = dojo.byId(refreshId)

在这种情况下,您需要替换第75行和第140行以传递id参数

function StandbyDialog_Started(refreshId) { 
    try{
      if(StandbyDialog_Do==true){
          if(this.StandbyDialog_Obj==null) {          
                var forms= (refreshId)?dojo.byId(refreshId):dojo.body();           
                  this.StandbyDialog_Obj = new dojox.widget.Standby({ 
                          target: forms,
                          zIndex: 10000
                  }); 
                 document.body.appendChild(this.StandbyDialog_Obj.domNode); 
                 this.StandbyDialog_Obj.startup(); 
          }
          StandbyDialog_StoreField()
          setTimeout("if(StandbyDialog_Do==true){StandbyDialog_StoreField()}",50);
          setTimeout("if(StandbyDialog_Do==true){this.StandbyDialog_Obj.show()}",200); 
        }
    }catch(e){
        console.log("StandbyDialog_Started:"+e.toString())
    }
}

dojo.subscribe( 'partialrefresh-start', null, function( method, form, refreshId ){  
    StandbyDialog_Do=true
    StandbyDialog_Started(refreshId) 
});

我没有测试过,但我希望它可以帮助你走得更远。