Bootstrap модальная проверка ответа $ .post и возврат к основной функции - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть bootstrap модальное #myModal с формой # userEditModal.

    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
      <div class="modal-dialog">
        <div class="modal-content">
            <!-- load content here -->
        </div>
    </div>
</div>

Эта форма загружается через $ .get

<form id="userEditModal" name="stepForm" class="form" method="POST" >
<div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-label="close">
        <span aria-hidden="true">&times;</span>
    </button>
    <h4 class="modal-title">{{ title }}</h4>
</div>
<div class="modal-body">

    {{ form.hidden_tag() }}
    {{ form_field(form.email) }}

</div>

<div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">Отмена</button>

    <button id="submit" type="submit" class="btn btn-danger">submit</button>
</div>

Вкл. Внутренний ответ $ .post 'ok', если форма проверена и сохранена.

$(document).ready(function() {
    $('.edit-modal-opener').click(function() {
        var target_link = $(this).data('whatever')
        var modal = $('#myModal'), modalBody = $('#myModal .modal-content');
        $.get(target_link, function(data) {
            modalBody.html(data);
            modal.modal();

            $('#submit').click(function(event) {
                event.preventDefault();
                $.post(target_link, data=$('#userEditModal').serialize(), function(data) {
                    if (data.status == 'ok') {
                        $('#myModal').modal('hide');
                        location.reload();
                    }
                    else {
                        $('#myModal .modal-content').html(data);
                         }
                });
            })
        });
    });
})

Если у меня возникла ошибка проверки, форма возвращается с ошибками, но застревает в фазе else и больше не ожидает события $('#submit').click , Пожалуйста, помогите мне исправить это js.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...