Модальный не загружает содержимое после того, как оно было открыто ранее

#jquery #modal-dialog

#jquery #modal-dialog

Вопрос:

Это странно, но…

У нас есть этот код:

 jQuery(function($) {
    $('#basic-modal .basic').click(function(e) {
        $('#basic-modal-content').modal();

        return false;
    });
    $('#basic-modal-also .basic').click(function(e) {
        $('#basic-modal-also-content').modal();

        return false;
    });
});
  

Которое запускает одно из двух модальных окон.

Их код:

 < !-- First Modal Window -->
<div id="basic-modal-content">
    <h3>Modal Window 2</h3>
    <p>any <strong>html</strong> content or images can go in here </p>
</div>

< !-- Second Modal Window -->
<div id="basic-modal-also-content">
    <h3>Modal Window 1</h3>
    <p>any <strong>html</strong> content or images can go in here </p>
</div>
  

Я нахожу, что при нажатии мы запускаем модал, и он показывает его содержимое. Мы закрываем его, и когда мы открываем его снова, его содержимое пустое..

Есть ли что-то болезненно очевидное, нужно ли нам что-то удалять или, возможно, мне нужно дать вам еще немного кода?

Мы используем простой модальный скрипт Эрика Мартинса. http://www.ericmmartin.com/projects/simplemodal /

Хорошо, похоже, у нас конфликт, не уверен, что его вызывает.

У нас есть simplemodal и simplecountdown . Простой модальный код: http://www.ericmmartin.com/projects/simplemodal / Простой код обратного отсчета: https://github.com/hilios/jquery.countdown /

Интересно, сталкивался ли кто-нибудь с этим конфликтом. Я также спрошу Эрика в Google

Ответ №1:

Много раз модал удалит содержимое или каким-то образом скроет его. Модальные скрипты часто не учитывают тот факт, что вы можете открыть его снова. Они предполагают, что вы только откроете его, выполните XYZ в окне, затем двигайтесь дальше. Одна вещь, которую я делал в подобных ситуациях, — это перезагружать содержимое с помощью jQuery каждый раз, когда вы запускаете модал, если это действительно так. Я бы использовал это:

 <div id="modal"> содержимое будет размещено здесь</div>
 $('#modal').html('<p> любой HTML-контент или изображения могут быть размещены здесь </p>');

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