2011-12-28 3 views
0

У меня есть несколько вкладок. И на одной вкладке я хочу открыть много диалогов. Но если пользователь меняет вкладку, я хочу, чтобы эти диалоги оставались на другой вкладке. Что происходит сейчас, так это то, что если пользователь переключает вкладки, диалог всегда находится наверху.Храните диалоги jquery внутри вкладки

Любая идея, как поддерживать диалог внутри Div всегда?

Спасибо!

ответ

1

Когда вы нажимаете на вкладку, JQuery просто скрывает все содержимое вкладки (div) и показывает выбранный div. Поэтому вам нужно синхронизировать диалог show/hide, на основе которого вы хотите отобразить диалог.

Показать диалоговое окно (ы), когда пользователь нажимает вкладку, которая имеет диалог, и закрывает их, когда они переходят на другие вкладки.

Вы можете использовать функцию вкладок JQuery select: function(event, ui) { ... }, чтобы отобразить/скрыть диалог.

Link to JQuery Tabs select event

Link to JQuery Dialog method

Good Luck :)

+1

Новая возможность доступна как в JQuery-UI 1.10: параметр 'appendTo' из диалогового виджета позволяет указать, какой элемент диалога виджет добавляется к (по умолчанию: ''). Если вы добавите элементы диалога в div 'ui-tabs-panel' или любой из его потомков, он будет скрыт, когда вкладка будет скрыта/деактивирована. – tcovo

0

Вы можете закрыть диалоговое окно события щелчка каждой вкладки. Вам нужно будет найти способ указать, что диалог был открыт и на какой вкладке, чтобы при повторном нажатии этой вкладки откроется диалоговое окно. Вероятно, вы можете просто добавить класс в div диалога, когда он закрыт, что соответствует имени табуляции или что-то в этом роде.

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