Ошибка отправки нескольких изображений с помощью XHR с помощью Mozilla Mobile - PullRequest
0 голосов
/ 16 ноября 2018

Привет, у меня есть веб-сайт, на котором на одной из страниц люди могут выбирать одно или несколько изображений с помощью контроллера загрузки файлов asp.net (в HTML это будет ввод типа «Файл»), и когда кто-то выбирает элементы, он автоматически отправляет изображения. в сервис, который я создал, чтобы справиться с этим. вот мой код JavaScript:

var fileuploader = '<%="#" + fileImages.ClientID %>';
document.querySelector(fileuploader).addEventListener('change', function (e) {
    if (this.files.length > 0) {
        $("#spImageError").hide();
        var fd = new FormData();

        for (var i = 0; i < this.files.length; i++) {
            var file = this.files[i];
            fd.append("file_"+i, file);
        }
        var xhr = new XMLHttpRequest();
        xhr.open('POST', '/Services/HandleUpload.aspx', true);

        xhr.onload = function () {
            if (this.status == 200) {
            }
            else {
                console.log(this.status);
                $("#spImageError").show();
            };
            fd = new FormData();
            document.querySelector(fileuploader).value = "";
            $("#UpdProgress").hide();
            $("#progressOuter").hide();
            UpdateImagesUpadePanel();
        };

        xhr.send(fd);
        $("#progressOuter").show();
    }
}, false);

function UpdateImagesUpadePanel() {
    <%=ClientScript.GetPostBackEventReference(UpdPanel, "")%>;
}

'# spImageError' - это тег span, который показывает ошибку, если таковая возникает. Этот код работает во всех браузерах на ПК и даже в Chrome на телефоне Android. В браузере Mozilla он работает для 1 изображения, но не может отправить несколько изображений.

Когда я отлаживаю код, который был запущен на сервере, вместо нескольких файлов, сервер показывает только один файл, содержимое которого равно нулю. Таким образом, он вызывает ошибку и возвращает номер состояния, отличный от 200, поэтому он показывает ErrorMessage через тэг span #spImageError.

Буду признателен, если кто-нибудь поможет мне в этом вопросе

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