Материализация CSS: открыть модально программно с опциями - PullRequest
0 голосов
/ 28 марта 2020

Я использую Materialise CSS, и я не могу открыть модально программно и передать параметры одновременно. В настоящее время мой код:

сначала инициализировать модальный, я знаю, что ЗДЕСЬ я могу передать «опции», но мне пока рано. У меня пока нет этих опций.

$('#mymodal').modal();

позже, по нажатию кнопки, я открываю модальное поле и вот где мне нужно передать опции

$('#mymodal').modal('open');

Этот код работает правильно:

$('#mymodal').modal({
    onOpenEnd: function(){
        alert('ok');
    }
});

но он должен быть вызван во время инициализации, и это проблема.

Мне нужно что-то подобное, но это не работает

$('#mymodal').modal('open', {
    onOpenEnd: function(){
        alert('ok');
    }
});

Вот полный пример

function editBook(id) {
    $('#mymodal').modal('open', {
        onOpenEnd: function(){
            $.ajax({url: '/api/books/'+id})
            // ...
        }
    });
}

function editAuthor(id) {
    $('#mymodal').modal('open', {
        onOpenEnd: function(){
            $.ajax({url: '/api/authors/'+id})
            // ...
        }
    });
}

$(document).ready(function() {
    $('#mymodal').modal();
    $('#mybtn-book').click(function(){
        editBook($(this).attr("data-id"));
    });
    $('#mybtn-author').click(function(){
        editAuthor($(this).attr("data-id"));
    });
});

Спасибо за любой совет или подсказку.

...