Клонируйте jqueryui диалоговые кнопки наверху диалогового окна

Я не думаю, что возможно сравнить отложенную версию с локальной версией в Visual Studio, однако я буду очень счастливо исправлен по вопросу.

5
задан mattmac 30 September 2009 в 19:48
поделиться

2 ответа

Да, вы можете это сделать. Точный селектор, используемый в сценарии jQuery, будет зависеть от элемента HTML, используемого для отображения ваших кнопок,

2
ответ дан 14 December 2019 в 04:43
поделиться

The dialog widget doesn't provide this behavior out-of-the-box. You can hack the behavior yourself but it might break as you upgrade to newer jquery-ui releases. Here's how I would accomplish it:

    $('#my-dialog').dialog({
        buttons: {
            'hello world': function() { alert('hello world'); },
            'good bye': function() { alert('goodbye'); }
        },
        open: function(event, ui) {
            // for whatever reason, the dialog isn't passed into us as a paramter, discover it.
            var dialog = $(this).closest('.ui-dialog');

            // create a copy of all the buttons and mark it as a clone (for later)
            var originalButtons = $('.ui-dialog-buttonpane', dialog)
            var clonedButtons = originalButtons.clone().addClass('clone');
            $('.ui-dialog-titlebar', dialog).after(clonedButtons);

            // cloning doesn't copy over event handlers, so we need to wire up
            // the click events manually.     
            $('button', clonedButtons).click(function() {
                var button = $(this);                    
                var buttonIndex = $('button', clonedButtons).index(button);
                $('button:eq(' + buttonIndex + ')', originalButtons).click();
            });
        }
    });
2
ответ дан 14 December 2019 в 04:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: