JS работает только если страница обновлена - PullRequest
1 голос
/ 10 апреля 2020

Я знаю, что есть похожие вопросы, но я не могу понять, почему я все еще получаю эту ошибку. Функция JS отлично работает при первой загрузке страницы, но затем мне нужно обновить sh всю страницу, чтобы она снова заработала. Ответ представляет собой динамический c html, который обновляет div с новой информацией.

Вот код:

<!-- delete image function -->

<script type="application/javascript">
$(document).ready(function($){
    $('.delete_image').click(function(e){
        e.preventDefault();
        var rowid = $(this).attr('data-row-id');
        var rowprg = <?php echo $prog_id; ?>;
        var roworg = $(this).attr('data-org');
        var dataString = 'rowid=' + rowid + '&roworg=' + roworg + '&rowprg=' + rowprg;                  
        var parent = $("#"+rowid);                  
        bootbox.dialog({
                message: "<div class='alert alert-danger' role='alert'>Estas seguro que quieres eliminar esta imagen?</div>",
        title: "<i class='fas fa-trash-alt'></i> Eliminar Imagen!",
        buttons: {
            success: {
                label: "No",
                className: "btn-success",
                callback: function() {
                    $('.bootbox').modal('hide');
                }
            },
            danger: {
                label: "Eliminar",
                className: "btn-danger",
                callback: function() {
                    $.ajax({
                        type: 'POST',
                        url: 'delete_records.php',
                        data: dataString,
                    })
                    .done(function(response){
                        bootbox.alert('Imagen eliminada satisfactoriamente!');
                        $("#cardis").html(response);
                    })
                    .fail(function(){
                        bootbox.alert('Error. No se pudo eliminar imagen');
                    })
                }
            }
        }
        });
    });
});
</script>

У меня есть другая функция JS, которая загружает изображения на сервер и работает нормально, но также после загрузки изображения, функция удаления, одна У меня проблемы с, тоже не работает.

Заранее спасибо за помощь

1 Ответ

0 голосов
/ 10 апреля 2020

Поскольку ваш html является динамическим c, поэтому, чтобы ваш .delete_image всегда работал, вам нужно привязать событие click следующим образом:

$(document).on('click', '.delete_image', function(e){
  ...
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...