как скрыть модал? - PullRequest
       14

как скрыть модал?

0 голосов
/ 17 февраля 2020

Я уже застрял почти на один день, но все еще не могу решить эту проблему. Я уже ищу в Интернете и рекомендую использовать этот код $('#Modal').modal('hide'). Это работает в моей другой функции, которая использует модальные, но есть специфицированная c функция, которая не может закрыться. Вот пример, где я могу закрыть модал.

$(document).on('click', '#btnProcedureAccessSave', function (event) {
    HideAllInModal();
    $('#divLoadingInModal').show();
    $.ajax({
        async: false,
        type: 'POST',
        url: '/admin/AddProcedureAccess',
        data: {
            UserID: $('#txtNewUserID').val(),
            ProcedureID: $('#txtSelectedProcedureID').val(),
            __RequestVerificationToken: gettoken(),
        },
        success: function (response) {
            if (response['success'] == true) {
                $('#Modal').modal('hide');
                ProcedureAccessMarkUpUpdate(response['data']);
            }
            else {
                $('#divLoadingInModal').hide();
                $('#divProcedureAccessInModal').show();
                ValidationError(response['error']);
            }
        },
        error: function (jqXHR, exception) {
            $('#divLoadingInModal').hide();
            $('#divProcedureAccessInModal').show();
            JavaScriptError(jqXHR, exception);
        }
    });
});

здесь код, который я не смог закрыть модальным

function DeleteUserProcedureAccess(ID) {
    HideAllInModal();
    $('#divLoadingInModal').show();
    $.ajax({
        async: false,
        type: 'POST',
        url: '/admin/DeleteUserProcedureAccess',
        data: {
            UserProcedureID: ID,
            __RequestVerificationToken: gettoken()
        },
        success: function () {
            $('#' + ID).remove();
            $('#Modal').modal('hide');
        },
        error: function (jqXHR, exception) {
            $('#Modal').modal('hide');
            JavaScriptError(jqXHR, exception);
        }
    });
}

мой HTML код

<div class="modal fade show" tabindex="-1" role="dialog" id="Modal" style="padding-right: 17px;" aria-modal="true">

    @*Loading Modal*@
    <div id="divLoadingInModal" class="modal-dialog modal-md modal-dialog-centered" role="document" style="display:none; width:110px;">
        <div class="modal-content" style="text-align:center">
            <img src="~/Content/Assets/img/5.gif"  style="width:100px; height:100px; margin:5px;"/>
            <h5>Loading...</h5>
        </div>
    </div>

    @*Procedure Access Modal*@
    <div id="divProcedureAccessInModal" class="modal-dialog modal-md modal-dialog-centered" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title"><label id="lblProcedureAccessModalHeader"></label></h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">×</span>
                </button>
            </div>
            <div class="modal-body needs-validation">
                <input id="txtProcedureAccessID" type="hidden" />
                <div class="form-Group">
                    <label>Name</label>
                    <input id="txtNewUserID" type="hidden" />
                    <div class="input-group">
                        <input id="txtProcedureAccessname" type="text" class="form-control form-control-sm" />
                    </div>
                    <label id="err_ProcedureAccessUserID"></label>
                </div>
                <div class="modal-footer bg-whitesmoke">           
                    <button class="btn btn-primary btn-shadow" id="btnProcedureAccessSave">Save</button>
                </div>
            </div>
        </div>
    </div>

</div>

1 Ответ

0 голосов
/ 17 февраля 2020

вам нужно найти правильный идентификатор модального div, например, если вы используете этот $ ('# Modal'). Modal ('hide'); это означает, что ваш модальный идентификатор "Модальный". вы используете правильный способ скрыть модель, но ваш селектор jquery имеет неверный идентификатор. используйте правильный jquery идентификатор селектора, например, если ваш модал, когда вы его показываете, вы звоните - $ ('# divLoadingInModal'). show (); То же самое, чтобы скрыть, нужно вызвать $ ('# divLoadingInModal'). hide (); или $ ('# divLoadingInModal'). modal ('hide'); **** Убедитесь, что вы используете правильный jquery селектор в функции $.

...