0

Я обновил свой тестовый сайт от начальной версии версии 2.3 до версии 3.3.5.upgrade to bootstrap 3 - вызов jquery для модального сбоя (но работает в версии 2.3)

Когда я заменил файл bootstrap.min.js с версии 3.2 по v3.3.5, одна часть моего кода jquery не вызывается с v3.3.5 из bootstrap.min.js, но вызывается в версии 2.3.

После большого количества времени и усилий я смог точно определить, где произошла ошибка, но я не могу понять, почему эта ошибка возникает с v3.3.5 (но работает с v2.3), и я также неспособный понять, как это исправить. Мои навыки JQuery не сильны.

Вот код, который я (я поставил в предупреждениях, чтобы помочь мне определить, что не работает, и что работаю):

.... 
$('#change_formatting_style_button').click(function() { 
    alert('a'); 
    if (! $('#change_formatting_style_button').attr('disabled')) { 
     alert('b'); 
     $('#preview_modal').modal(); // this line is not called in v3.3.5. 
     alert('c'); 
    } 
    alert('d'); 
    return false; 
}); 
.... 

В версии 2.3 bootstrap.min.js, линия $('#preview_modal').modal(); называется , но в версии 3.3.5 он не вызывается. Я не уверен, почему это не удается в версии 3.3.

Ниже функция, которая не называется:

$('#preview_modal').on('shown', function() { 
    alert('0'); 
    $('#preview_contents').html($('#live_preview').html()); 
    alert('1'); 

}); 

Я искал SO и Google за помощь, но я не в состоянии пролить свет на это.

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

ответ

1

Ваш модаль инициализирован, но пока не показан. Попробуйте использовать:

$('#preview_modal').modal('show'); 
+0

спасибо за совет, но я уже пробовал это, и функция все еще не вызвана. – user1261774

+1

Внутри функции, которая не вызывается, попробуйте изменить 'показанный' на 'показанный.bs.modal' –

+0

Charlie Harster - Этот код работает! Ручной насос! Спасибо за решение. Где это задокументировано, так что я могу прочитать об этом? – user1261774

 Смежные вопросы

  • Нет связанных вопросов^_^