JQuery-UI dialog,' switching ' modal option не работает
Можно ли динамически изменять модальный режим диалога пользовательского интерфейса jquery?
Я привел рабочий пример: http://jsfiddle.net/LXB2Y/ и похоже, что это не работает.
$( this ).dialog("option","modal",false);
3 ответа:
Похоже, что диалог не будет отражать изменения, пока он открыт, но изменения вступают в силу. Чтобы показать изменения, вы можете закрыть, а затем сразу же снова открыть диалоговое окно. Возможно, это не самое лучшее решение.
$( this ).dialog("option","modal",true) .dialog("close") .dialog("open");
Если вы хотите изменить параметры диалогового окна, вам нужно сделать это до того, как вы его откроете. Кроме того, вам нужно будет взаимодействовать с компонентами диалога, такими как наложение с вашим собственным кодом после его открытия
Пример:
/* initialize a dialog*/ $('#dialog').dialog({autoOpen:false, modal:true}); /* open a dialog from a click handler and change options*/ $('#myButton').click(function(){ /* change original modal option*/ $('#dialog').dialog('option', 'modal', false); /* change title based on text of "myButton"*/ $('#dialog').dialog('option', 'title', $(this).text()) /* options have been changed, open dialog now */ $('#dialog').dialog('open'); });
Все еще не работает с jQuery 1.11. Однако вы можете просто добавить наложение вручную, если хотите переключиться с немодального диалога на модальный:
$("#dialog").dialog("widget").before("<div class='ui-widget-overlay ui-front'></div>");
Удалите наложение соответствующим образом, если вы хотите переключиться с модального диалога на немодальный.