Многоразовое модальное диалоговое окно JQuery? - PullRequest
0 голосов
/ 24 мая 2009

Я использую jquery в течение последних 6 месяцев.

У меня есть форма, в которой я хочу заменить 20 различных предупреждений JavaScript (""); операторы с модальными диалоговыми окнами jQuery.

Я не хочу создавать отдельный раздел div для каждого сообщения.

Есть ли способ с помощью базового jquery-ui создать модальное диалоговое окно для повторного использования, где я могу передать заголовок и текст сообщения?

Дайте мне знать, если у вас есть идеи?

Derek

Ответы [ 5 ]

7 голосов
/ 20 сентября 2011

Да, вы можете создать диалоговое окно многократного использования и передавать сообщение динамически.

  1. Создать класс диалога

    function OkDialog() {
    
       this.showMessage = function(message) {
    
        var $dialog = $('<div></div>')
    
          .html(message)
    
          .dialog({
    
             modal: true,
    
             closeOnEscape: true,
    
             buttons: {
    
                Ok: function() {
    
                   $(this).dialog("close");
    
              }
    
            }
    
       });
    
          $dialog.dialog("open");
    
       }
    
    }
    
  2. Создание глобального объекта в одном из общих файлов (jsp).

    OK_DIALOG = new OkDialog();
    
  3. Вызовите эту функцию с желаемым сообщением.

    OK_DIALOG.showMessage("You don't have more than a single penny.");
    

Работа выполнена !!

3 голосов
/ 24 мая 2009

Существует множество плагинов, которые вы можете найти для jQuery для диалоговых окон.

В прошлом я использовал плагин для facebox .

Базовое использование может быть простым:

jQuery.facebox('something cool')
2 голосов
/ 24 мая 2009

Я настоятельно рекомендую Экспромт . Он хорошо документирован, имеет хорошие примеры и, в основном, заменяет Javascript Alert and Input, но в то же время является очень расширяемым и имеет массу опций и дополнительных функций.

1 голос
/ 03 марта 2010

Я довольно часто использовал Facebox, но постепенно отказываюсь от него в пользу диалогового окна, которое является частью коллекции пользовательского интерфейса jQuery:

http://docs.jquery.com/UI/Dialog

Вы упомянули core jquery-ui, разве это не помогает?

1 голос
/ 24 мая 2009

Я бы порекомендовал плагин Growl для jQuery. http://plugins.jquery.com/project/Growl

Преимущество использования Growl заключается в том, что он обладает действительно хорошей встроенной функциональностью, в частности, дополнительной возможностью иметь функцию автоматического удаления.

Это немодально-модально.

Под этим я подразумеваю, что пользователю не требуется взаимодействовать с ним, прежде чем он сможет вернуться к взаимодействию с сайтом, поддерживая тем самым рабочий процесс на сайте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...