Модальное диалоговое окно закрытия возвращается/перезагружается или не реагирует на нажатие кнопки «Закрыть».Jquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Anonymous
 Модальное диалоговое окно закрытия возвращается/перезагружается или не реагирует на нажатие кнопки «Закрыть».

Сообщение Anonymous »

У меня есть простой модальный диалог, а в разделе контента есть таблица данных jQuery, которую я настраиваю динамически с помощью вызовов Ajaz (настраиваю столбцы таблицы, строки данных и т. д.), поэтому я могу повторно использовать тот же модальный диалог с разные наборы данных.
Все работает нормально, кроме кнопки "Закрыть". Я либо не получаю ответа (модальное окно не закрывается и не исчезает), либо оно закрывается и выполняет обратную отправку (перезагружает страницу).
Я попробовал все, что предлагалось, когда искал эту проблему.
Когда я использую type="button", он не закрывается, когда я его удаляю, он закрывается, но выполняет обратную передачу.
Я должен отметить, что у меня есть панель вкладок, и это это из второй вкладки. Когда он перезагружает страницу, он извлекает данные для первой вкладки и переходит на первую вкладку.

Код: Выделить всё




[h4]
[/h4]
×












Close




У меня есть в разделе сценариев:

Код: Выделить всё

$('#dataModal').on('show.bs.modal', function (event) {
// id of the modal with event
//var button = $(event.relatedTarget) // Button that triggered the modal
//var orgID = button.data('orgID') // Extract info from data-* attributes
//var orgName = button.data('orgName')
var modal = $(this)
var title = modal.data('title');
var content = modal.data('content');
var msg = modal.data('msg');

if (msg != null && msg != '')
content += "
Error: " + msg;
// Update the modal's content.
modal.find('.modal-title').text(title)
modal.find('.modal-body').html(content)
});
и где я его открываю после получения данных из вызова Ajax:

Код: Выделить всё

function populateTable(resultData) {
if ($.fn.DataTable.isDataTable('#detailTable')) {
tblDetails.search("").draw();
tblDetails.clear().draw();
tblDetails.rows.add(resultData).draw();
tblDetails.columns.adjust();

$("#dataModal").data("title", "Request Status");
$("#dataModal").data("content", tblDetails);
$("#dataModal").attr("data-msg", '');
$('#dataModal').modal({ backdrop: 'static', keyboard: false });
$('#dataModal').modal('show');
}
}
Я пробовал:

Код: Выделить всё

$(function () {
$('#dataModal').modal('toggle');
});
Всплывает сразу без моего разрешения(!) и без данных в таблице данных. Однако, когда я нажимаю на ссылку, которая заполняет таблицу данных и показывает модальное окно, она открывается с правильно отображаемыми данными. В любом случае он закрывается только при нажатии вне модального окна.
Ни один из них не работает, когда используется type="button":

Код: Выделить всё

$(function () {
$('#btnClose').on("click", () => {
$('#dataModal').modal('hide');
});
});

$(document).ready(function () {
$('#btnClose').on("click", () => {
//$(".modal.fade.in");
});

$(document).ready(function () {
$('#btnClose').on("click", () => {
$('#dataModal').modal({ backdrop: 'static', keyboard: false });
$('#dataModal').modal('hide');

});
Без удаления type="button":

Код: Выделить всё

$(function () {
$('#dataModal').modal('toggle');
});
Ведет себя, как указано выше.

Код: Выделить всё

$(function () {
$('#btnClose').on("click", () => {
$('#dataModal').modal('hide');
});
});

$(document).ready(function () {
$('#btnClose').on("click", () => {
$(".modal.fade.in");
});
Ни один из вышеперечисленных вариантов не реагирует на нажатие кнопки «Закрыть»:
Не знаю, что еще попробовать. Это может быть проблема BS 5.3, поскольку у меня есть другие проекты с BS4, и они работают должным образом. Я просто не понимаю, почему страница перезагружается или не отвечает.
Еще одна странная вещь, которую я заметил, это то, что .on('show.bs.modal' вызывается перед модальным('show ') вызывается, где устанавливаются все bs-data-xxx.

Подробнее здесь: https://stackoverflow.com/questions/791 ... -onclose-b
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Jquery»