Замена window.confirm () с диалоговым окном jQuery UI подтверждает в entwine при отправке формы администратора - PullRequest
0 голосов
/ 22 октября 2019

SS3

В интерфейсе информационного бюллетеня администратора, как заменить форму подтверждения подтверждения отправки window.confirm () на диалог подтверждения пользовательского интерфейса jQuery в entwine?

window.confirm () - метод блокировки, так что this._super (e) после того, как оно будет действительным, но this._super (e) внутри функции обратного вызова click диалоговой кнопки пользовательского интерфейса jQuery отсутствует, поскольку онклик уже возвращен.

Исходный код

    ...
$.entwine('ss', function($) {
        $('#action_doSend').entwine({
            onclick: function(e) {
                var message = 'Are you sure you want to send this newsletter?';
                if (confirm(message)) {
                    this._super(e);
                } else {
                    e.preventDefault();
                    return false;
                }
...

Пробовал это

...
    let self;
    $.entwine('ss', function($) {
        $('#action_doSend').entwine({
            onclick: function(e) {
                self = this;
                $( "#dialog-confirm-send" ).dialog({
                    resizable: false,
                    height: "auto",
                    width: 400,
                    modal: true,
                    buttons: {
                        "Send newsletter": _ => {
                            self._super(e);
                        },
                        Cancel: function() {
                            $(this).dialog( "close" );
                        }
                    }
                });
...
...