У меня есть HTML-форма с типом ввода файла. Мне нужно отправить форму асинхронно на сервер. Сервер прослушивает запрос на загрузку входящего файла (многофакторный файл). Можно ли добиться этого с помощью jquery.Asynchronous JQUERY Загрузка файла
ответ
Можно ли достичь этого с помощью jquery.
Нет, не напрямую с jQuery.
Вы можете использовать HTML5 API файла: https://developer.mozilla.org/en-US/docs/Using_files_from_web_applications
Или, если вам нужно поддерживать устаревшие версии браузеров вы могли бы использовать некоторые плагин, такие как Uploadify
, Fine Uploader
или jQuery form plugin
.
Я хотел бы взглянуть на этот плагин JQuery:
Вы можете легко использовать $.ajax()
метод JQuery для отправки файлов, если FormData и File API поддерживаются (как функции HTML5).
Вы также можете отправить файлы without FormData, но в любом случае API файлов должен присутствовать для обработки файлов таким образом, чтобы их можно было отправить с помощью XMLHttpRequest (Ajax).
$.ajax({
url: 'file/destination.html',
type: 'POST',
data: new FormData($('#formWithFiles')[0]), // The form with the file inputs.
processData: false // Using FormData, don't process data.
}).done(function(){
console.log("Success: Files sent!");
}).fail(function(){
console.log("An error occurred, the files couldn't be sent!");
});
Для быстрого, чистого, например JavaScript в разделе "Sending files using a FormData object".
Если вы хотите добавить запасной вариант для старых браузеров, или если вы хотите только один кросс-браузер реализации использовать Bifröst. Он добавляет дополнительные jQuery Ajax transport, позволяющие отправлять файлы с самолетом старого $.ajax()
.
Просто добавьте jquery.bifrost.js и сделать запрос:
$.ajax({
url: 'file/destination.html',
type: 'POST',
// Set the transport to use (iframe means to use Bifröst)
// and the expected data type (json in this case).
dataType: 'iframe json',
fileInputs: $('input[type="file"]'), // The file inputs containing the files to send.
data: { msg: 'Some extra data you might need.'}
}).done(function(){
console.log("Success: Files sent!");
}).fail(function(){
console.log("An error occurred, the files couldn't be sent!");
});
Удачи!
- 1. Asynchronous ftp client (загрузка файла) в vb.net
- 2. asynchronous javascript загрузка/выполнение
- 3. Asynchronous Загрузка изображения
- 4. Загрузка изображений asynchronous в C#
- 5. Asynchronous Lazy Загрузка в ActionScript
- 6. Javascript Asynchronous Загрузка js-файла и создание объекта объекта
- 7. Загрузка файла jQuery не Загрузка
- 8. Asynchronous JavaScript загрузка дает ошибки при запуске с помощью JQuery
- 9. Загрузка файла BlueImp/jQuery
- 10. Загрузка файла плагина JQuery
- 11. Загрузка файла JQuery WebApi
- 12. Загрузка файла PHP + jQuery
- 13. Загрузка файла Jquery php
- 14. Загрузка файла jquery (сортировка)
- 15. jQuery Загрузка Прогресс и загрузка файла AJAX
- 16. Загрузка файла Jquery: загрузка одного файла для перетаскивания
- 17. jQuery.ready() function and asynchronous CSS
- 18. Загрузка файла pdf в jquery
- 19. Загрузка одного файла jquery php
- 20. Загрузка файла с помощью jQuery
- 21. Загрузка файла jQuery с сообщением
- 22. добавьте кнопку «загрузка файла jquery»
- 23. Struts 2 JQuery Загрузка файла
- 24. Jquery ajax загрузка одного файла
- 25. Загрузка файла jQuery jango ajax
- 26. Загрузка файла jquery в рельсах
- 27. Загрузка файла jQuery в AngularJS
- 28. Создание или загрузка файла jQuery?
- 29. Загрузка файла Laravel и jQuery
- 30. Cakephp 3 загрузка файла jquery
Возможный дубликат [Как я могу загружать файлы асинхронно с помощью jQuery?] (Http://stackoverflow.com/questions/166221/how-can-i-upload-files-asynchronously-with-jquery) – gdoron