TempoClick Ответов: 1

Перетащите файл, чтобы передать его имя контроллеру.. НЕ МОГЛА ЗАГРУЗИТЬ


Я пытаюсь перетащить файл .pdf, а затем передать его имя в качестве параметра контроллеру. Я не хочу сохранять файл ни в одном каталоге.
У меня есть область выпадения и группа списков для отображения имени файла:
<h2>Drag & Drop your file</h2>
<div id="dropArea">
    Drop your file here
</div>
<h4>Dropped files : </h4>
<ul class="list-group" id="uploadList"></ul>


Что я уже пробовал:

<script type="text/javascript">
        $(document).ready(function () {
            alert("Hi");
            $("#dropArea").on("dragover", function (event) {
                event.preventDefault();
                event.stopPropagation();
                $(this).addClass('active-drop');
            });
            $("#dropArea").on("dragleave", function (event) {
                event.preventDefault();
                event.stopPropagation();
                $(this).removeClass('active-drop');
            });
            $("#dropArea").on("drop", function (event) {
                event.preventDefault();
                $.ajax({
                    type: "POST",
                    url: "Home/Index",
                    contentType: "application/json; charset=utf-8",

                    data: { // How do I pass the file's name to pass it here?? },

                    dataType: "json",
                    success: function (result) {
                        alert('Worked!');
                    },
                    error: function (result) {
                        alert("Didn't work");
                    }
                });
   $('#uploadList').append('<li class="list-group-item">' + /*fileName*/ + '</li>')
                alert("Dropped!");
            });
        });
</script>

ПЕРВЫЙ: dragover и dragleave не срабатывают.
ВТОРОЙ: Как передать имя файла в data раздел "Аякса"?

F-ES Sitecore

Передача имени файла вам не поможет. Google "jquery drag drop upload file", и я уверен, что вы найдете множество примеров того, что вам нужно сделать, чтобы поддержать это.

TempoClick

@F-ES Sitecode, я прочитал много статей, но все они посвящены загрузке файла и его сохранению. Здесь мне нужно только передать имя отброшенного файла.

F-ES Sitecore

Он будет в конечном итоге в объекте FormData, и вы прочитаете его свойства оттуда

https://stackoverflow.com/questions/28906435/get-all-items-from-html5-formdata-object-html5?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

1 Ответов

Рейтинг:
1

F-ES Sitecore

Здесь есть рабочий пример того, как это сделать;

Перетаскивание загрузки файлов с помощью jQuery и AJAX[^]


TempoClick

@F-ES, 404: страница не найдена!

F-ES Sitecore

МММ, для меня это нормально. Это на первой странице результатов из google, которые я предложил, хотя нетрудно найти примеры этих вещей.

Richard Deeming

Ссылка отлично работает для меня. Вы отстали или корпоративный (или правительство) брандмауэр?