О FormData
Xmlhttprequest level 2 добавил новый интерфейс --- FormData
Используя объект FormData, вы можете смоделировать серию элементов управления форм с некоторыми парами ключевых значений через JS. Вы можете использовать метод send () xmlhttprequest, чтобы отправить формы асинхронно. По сравнению с обычным AJAX, наибольшее преимущество использования FormData заключается в том, что он может загружать двоичные файлы асинхронно.
FormData объект
Объект FormData может сформировать запрос имени и значение всех элементов формы и отправить его на фоновый Использование объектов FormData может уменьшить рабочую нагрузку на сшивание QueryString при отправке с использованием AJAX
QueryString - это строка запроса, http Query String от URL? Следующее значение указывает
Когда форма на странице отправляет запрошенные данные на страницу в режиме GET (если данные содержат небезопасные символы, браузер сначала преобразует их в шестнадцатеричные символы, а затем передает его, например, когда пространство преобразуется в %20), веб -сервер помещает запрошенные данные в переменную среды, называемую Query_String. Метод запроса. КОРИСДИНГ - это избавиться от соответствующего значения из этой переменной среды и восстановить символы, преобразованные в шестнадцатеричную.
Загрузить файлы и изображения, используя FormData
Создайте пустой объект FormData, а затем добавьте клавишу/значение, используя метод добавления
var formData = new FormData (); FormData.Append ("имя", "Zhang San");Если уже есть форма формы, получите объект формы и передайте его в объект FormData в качестве параметра
<! Doctype html> <html> <head> <meta charset = "utf-8"/> <title> </title> </head> <body> <form name = "form1" id = "form1"> <input id = type = "file" name = "name"> </input> </form> <script = "text/javascript"> name "> </input> </form> <script =" javascript " form = document.getElementbyId ("form1"); var formData = new FormData (form); </script> </body> </html>Вы можете продолжать добавлять новые пары клавишных значений на основе существующих данных формы.
var formData = new FormData (); FormData.Append («Возраст», «21»);
Загрузить файлы с помощью объектов FormData
var formData = new FormData ($ ("#form1"). [0]); // Получить метод файла One // var formData = new formData (); //formdata.append("file ", $ ("#file ") [0] .files [0]); // Получить метод файла два $ .ajax ({type: 'post', url: '#', данные: formdata, кэш: false, processdata: false, // не обрабатывает данные. Потому что данные ForseDATA - нет. Не устанавливайте успех заголовка запроса типа контента: function () {} error: function () {}})Выше приведено полное описание метода использования FormData для загрузки файлов и изображений в JS, представленном вам редактором. Я надеюсь, что это будет полезно для всех. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение!