blueimp jQuery-File-Upload без ajax

Мне очень нравится обработка выбора файла на стороне клиента и предварительный просмотр с возможностью отмены или удаления.

Однако я хочу загрузить страницу с формой, и мне не нужно использовать ajax. Я возился со всеми параметрами и все равно не могу найти, чтобы публиковать в форме с синхронно выбранными файлами.

Можно ли получить data.files для публикации с формой?


person Topaz    schedule 15.02.2013    source источник
comment
Загрузка файла без AJAX довольно проста на большинстве языков. Кажется, ваш вопрос не совсем ясен. whathaveyoutried.com   -  person Jay Blanchard    schedule 15.02.2013
comment
Джей Бланшар, вы использовали blueimp jQuery-File-Upload? Я понимаю, что очень просто сделать загрузку файла без ajax, это был не мой вопрос. Мой вопрос заключался в использовании blueimp jQuery-File-Upload для публикации синхронной формы.   -  person Topaz    schedule 16.02.2013
comment
Публикация файлов с помощью формы требует, чтобы компонент загрузки работал вместе с компонентом публикации формы, но я не уверен, что вы имеете в виду под синхронным в этом контексте? Вы имеете в виду публикацию данных формы и загрузку чего-либо одновременно? Если это так, см. это - github.com /blueimp/jQuery-File-Upload/wiki/   -  person Jay Blanchard    schedule 19.02.2013
comment
@JayBlanchard Он имел в виду обычную отправку формы (без ajax). Jquery-File-Upload будет использоваться только как графический интерфейс. Таким образом, пользователь может добавлять файлы, удалять файлы, перетаскивать файлы и т. д. Когда он все сделал и заполнил остальную часть формы, он нажимает «Отправить», и вся форма отправляется и обрабатывается на бэкэнде, как это было бы. обрабатывается без JQuery-File-Upload. Есть идеи?   -  person theyuv    schedule 29.03.2018
comment
@theyuv Этому вопросу 5 лет, и он слишком широкий и неясный. У вас есть вопрос об этом? На самом деле нет особого смысла загружать файл с помощью AJAX и загружать остальную информацию через стандартный пост.   -  person Jay Blanchard    schedule 29.03.2018
comment
@JayBlanchard Да, мой вопрос в том, как вы можете делать то, что я описываю ... Я плохо объясняю себя, потому что вопрос не является широким. Re Не имеет особого смысла загружать файл с помощью AJAX...: файл не загружается через AJAX, он загружается со всей остальной информацией в форме. Вопрос в том, как использовать только тот графический интерфейс, который предоставляет Jquery-File-Upload. Или, наоборот, прямолинейный способ закодировать эту функциональность (добавлять, удалять, удалять файлы).   -  person theyuv    schedule 29.03.2018
comment
Вы должны создать форму, которая обрабатывается серверным скриптом (в данном случае PHP), что является довольно обычным взаимодействием клиента с сервером без JavaScript @theyuv   -  person Jay Blanchard    schedule 29.03.2018
comment
@JayBlanchard Это не слишком широко или неясно. Это очень ясно: он хочет разместить несколько файлов без ajax и возможности добавлять файлы, удалять файлы и т. Д., В частности, используя библиотеку BlueImp. Он не спрашивает Эй, что легко сделать? или Эй, я знаю, что сказал, что не хочу ajax, но не могли бы вы поправить меня и сказать, что ajax — это то, что нужно? Пожалуйста, ответьте на вопрос Т.   -  person Frozenthia    schedule 07.12.2018
comment
Ах, @Frozenthia, этот вопрос из 2013 года. Кроме того, ответ на вопрос Можно ли получить data.files для публикации с формой? - да. Почему это возможно? это не актуальный вопрос   -  person Jay Blanchard    schedule 07.12.2018


Ответы (2)


Вы можете отправлять файлы через стандартную форму отправки с помощью blueimp jQuery-File-Upload, установив для параметра replaceFileInput значение false.

Из документации:

По умолчанию поле ввода файла заменяется клоном после каждого события изменения поля ввода. Это необходимо для транспортных очередей iframe и позволяет запускать события изменения для одного и того же выбора файла, но его можно отключить, установив для этого параметра значение false.

person anthonator    schedule 16.04.2013
comment
Как мы можем изменить эту опцию динамически? У меня есть форма автосохранения (через ajax), которую пользователь может отключить, и поэтому он должен иметь возможность нормально отправлять форму. Прямо сейчас, когда автосохранение отключено и пользователь отправляет форму, данные выбранного файла не передаются на сервер. - person Amit Patel; 11.01.2016

Use config replaceFileInput = false;
jQuery('#add_new_product_form').fileupload({
            // Uncomment the following to send cross-domain cookies:
            //xhrFields: {withCredentials: true},
            fileInput: jQuery('#upload-video'),
            replaceFileInput: false,
            ......
})

И контроллер вы получите $_FILES для получения видеоданных.

person Nguyễn Thanh Toàn    schedule 18.09.2017