2014-09-23 1 views
0

Если открыть два диалогаЗакрыть больше, чем один диалог

dialogBusy = new sap.m.BusyDialog(); 
dialogBusy.setShowCancelButton(true); 
dialogBusy.setTitle("1"); 
dialogBusy.open(); 

dialogBusy = new sap.m.BusyDialog(); 
dialogBusy.setShowCancelButton(true); 
dialogBusy.setTitle("2"); 
dialogBusy.open(); 

dialogBusy.close(); 

//dialogBusy.close(); 

Когда я вызываю функцию близко я закрыть только второй диалог (правильный). Как закрыть все диалоги?

+0

, какой плагин вы используете для диалога? –

+0

Вы используете одну и ту же переменную для обоих диалогов, где вы перезаписываете первый экземпляр диалога со вторым. Вместо этого используйте отдельные переменные для обоих экземпляров. – Qualiture

+0

Можно сделать логику, чтобы закрыть все ваши диалоги. Просто добавьте все из них в массив и через одну простую функцию пройдите через все из них и вызовите функцию close() (вы можете проверить isOpen() на каждом, если хотите) – Aleksandrenko

ответ

0

Используйте два разных диалоговых окна.

<script src="https://openui5.hana.ondemand.com/resources/sap-ui-core.js" id="sap-ui-bootstrap" data-sap-ui-theme="sap_bluecrystal" data-sap-ui-libs="sap.m,sap.ui.commons"></script> 
 
<script> 
 
    var dialogBusy = new sap.m.BusyDialog(); 
 
    dialogBusy.setShowCancelButton(true); 
 
    dialogBusy.setTitle("1"); 
 
    dialogBusy.open(); 
 

 
    var dialogBusy2 = new sap.m.BusyDialog(); 
 
    dialogBusy2.setShowCancelButton(true); 
 
    dialogBusy2.setTitle("2"); 
 
    dialogBusy2.open(); 
 
    setTimeout(function() { 
 
     dialogBusy.close(); 
 
    }, 2000); 
 
    setTimeout(function() { 
 
     dialogBusy2.close(); 
 
    }, 1000); 
 
</script>