Как я могу отправить файл с Ajax?

Я знаю, что вопрос заключается в том, как вставить объект окна в компонент, но вы делаете это только для того, чтобы добраться до localStorage. Если вы просто хотите localStorage, почему бы не использовать сервис, который предоставляет именно это, например h5webstorage . Затем компонент будет описывать его реальные зависимости, которые делают ваш код более удобочитаемым.

-5
задан Majid 5 February 2019 в 12:07
поделиться

1 ответ

Вам необходимо создать объект данных формы. В функции ajax установите для processData значение false.

Поскольку данные, передаваемые в параметр данных в виде объекта (технически, что угодно, кроме строки), будут обрабатываться и преобразовываться в строку запроса, в соответствии с типом содержимого по умолчанию «application / x-www-form-urlencoded» ». Если вы хотите отправить DOMDocument или другие необработанные данные, установите для этого параметра значение false.

JS

  $("form").submit(function(evt){    
      evt.preventDefault(); //prevent refresh
      const formData = new FormData(this); // you need to create a FormData obj to be able to send files
   $.ajax({
       url: 'upload-my-files', //change this to your url
       type: 'POST',
       data: formData, //put formData as body data
       cache: false,
       contentType: false,
       enctype: 'multipart/form-data',
       processData: false,
       success: function (data) {
         console.log(data);
       }
   });
 });

Ссылки:

https://developer.mozilla.org/en-US/docs/Web/API/FormData [118 ]

http://api.jquery.com/jquery.ajax/

0
ответ дан Adis 5 February 2019 в 12:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: