Я использую модальный диалог с удаленным параметром:самозагрузки, модальные диалоговые окна, shown.bs.modal событие не срабатывает
<a target="profile-banner" data-target="#edit-slide-dlg" href="/Banner/SlideEditModal/1/1"
data-toggle="modal" class="banner-slide-control">Edit</a>
Где:
<div id="edit-slide-dlg" class="modal fade" tabindex="-1"></div>
Кроме того, я слушаю для shown.bs.modal события, где я использую event.target свойство:
$("body").on("shown.bs.modal", function (event) {
// do something with event.target
}
Некоторые причины это событие не срабатывает, когда я открываю диалог впервые. И его увольняют во второй раз. Я попытался просмотреть начальные загрузку скриптов и нашел этот код (см моего комментария):
var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
transition ?
that.$element.find('.modal-dialog') // wait for modal to slide in
.one($.support.transition.end, function() {
that.$element.focus().trigger(e) //THIS LINE NEVER EXECUTED AT FIRST DIALOG OPENING
})
.emulateTransitionEnd(300) :
that.$element.focus().trigger(e)
Итак, я выключил переход в качестве обходного пути, он сделал событие уволит в первый раз, но, event.target пустая строка. Во второй раз event.target содержит соответствующий диалог HTML. Это проблема с моим кодом или бутстрапом?
Голосование закрыть: Bootstrap изменилось много вещей между версиями 2 и 3. Пожалуйста, прочтите [Переход от 2.x до 3.0] (http://getbootstrap.com/getting-started/# миграционные заметки), а также новую документацию для [Модалей] (http://getbootstrap.com/javascript/#modals) – Phil
Мой вопрос относится к версии 3 (на самом деле я никогда не использовал версию 2). Опять же, это отставание происходит только тогда, когда используется дистанционный параметр. Я думаю, есть некоторая проблема с временем. Я попытаюсь ввести модальные диалоги через _JavaScript_ вместо _Attributes_. Возможно, я сам загружу контент модального диалога. Не хочу отказываться от модальности бутстрапа :). – Tenek
Вы используете разметку v2. Где ваш класс «modal-diag»? – Phil