2016-11-15 2 views
0

В моем приложении XPages я использую элемент управления xe: dynamicViewPanel и хотел бы добавить диалог/всплывающее окно ожидания/ожидания, когда раздел будет разворачиваться пользователем (щелкните на значке expand, чтобы открыть раздел). Иногда индекс просмотра не обновляется и открывает категорию, в которой много документов будет длиться некоторое время, тем временем я хочу отобразить некоторый «диалог загрузки» (который у меня уже есть, поэтому нет необходимости объяснять как это сделать). Моя проблема заключается в том, что я не могу найти какое-либо событие или точку входа, откуда начать.Как отобразить диалоговое окно ожидания в представлении XPages при расширении раздела

Спасибо всем! Alex

ответ

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) 
}); 

Я не проверял это, но я надеюсь, что это поможет вам пойти дальше.

+0

Привет, Евгений, спасибо за ваши идеи ... Я попробовал резервный контроль Фредрика Норлинга, он делает трюк для всех частичных обновлений. Это нормально для меня и удовлетворяет все наши потребности! –

Смежные вопросы