Есть ли способ удалить отдельные файлы при наличии нескольких входных файлов, которые не загружены, но предварительно просмотрены с помощью программы чтения файлов? - PullRequest
0 голосов
/ 19 февраля 2019

Когда я удаляю изображения из предварительного просмотра (они не загружены в БД), они все еще находятся там как файл и загружаются.Мой код буквально удаляет изображение из внешнего интерфейса, но он все равно загружается, и я не смог найти способ удалить файл, который хотел удалить, а некоторые даже сказали, что это невозможно, поскольку FileReader доступен только для чтения!Есть ли способ обойти это или мне нужно удалить мой код и начать новый?

Я прочитал на нескольких веб-сайтах, что это невозможно, а затем они показали совершенно новый код.Но я хочу найти Путь, который можно обойти.

Вот мой Код:

JS:

$(function() {
    // Multiple images preview in browser
    var imagesPreview = function(input, placeToInsertImagePreview) {

        if (input.files) {
            var filesAmount = input.files.length;


            for (i = 0; i < filesAmount; i++) {
                var reader = new FileReader();

                reader.onload = function(event) {

                    $('<div class="previewdeleter position-relative" data-item-id-div="input.files[i].length" style="height:200px;width: 200px; display: inline-block; position: relative !important;">' +
                        '<img alt="" src='+event.target.result+' style="height:200px;width: 100%; display: inline-block;">' +
                        '<div class="position-absolute" style="top: 0;right: 0;">' +
                        '<img src="/x.png" class="image-deletepreview" style="height: 20px; display: inline-block;"></div></div>')
                        .appendTo(placeToInsertImagePreview);


                    $('.image-deletepreview').on('click', function(e) {
                        e.preventDefault();
                        var deletepreview = $(this).parent().parent().remove();
                        console.log(deletepreview);

                    });

                }
                reader.readAsDataURL(input.files[i],);
            }

        }


    };

МОЙ HTML:

              <input value="" type="file" id="images" name="images[]" accept="image/*" multiple />
                <div id="previewHolder" data-item-id-div="input.files[i].length" multiple="" class="previewdeleter position-relative">
                    <div class="position-absolute delete-image">
                    </div>
                </div>

1 Ответ

0 голосов
/ 20 февраля 2019

Файлы, которые я хотел удалить, нельзя удалить, потому что они являются суперглобальными и не должны изменяться.Таким образом, FileReader в основном доступен только для чтения, а доступ к входным файлам запрещен!

В настоящее время я не могу найти способ удалить IMG перед загрузкой в ​​Laravel.

Вы можете использовать предварительный просмотр с загрузкой, тогда удаление предварительного просмотра не будет проблемой.

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