@rusgayfer

Как отправлять изображения через Ajax?

Блок изображения такой
<span class="btn btn-primary fileinput-button">
                    <i class="fa fa-fw fa-camera"></i>
                     <input type="file" name="files[]" multiple="" accept="image/jpeg, image/png, image/gif" id="basicUploadFile">
                    </span>


Вот так не работает
'files': $("#basicUploadFile").val(),

$("#confirm").on('click', function() {

		var data = {
				'message': $("#message").val(),
				'ques': $("#ques").val(),
				'name_music': $("#who_music").val(),
				'name_film': $("#who_film").val(),
				'name_doc': $("#who_doc").val(),
				'files': $("#basicUploadFile").val(),
				'token': $("#token").val(),
				'name': $("#name").val(),
				'search_music': $("#search_result_mu").val(),
				'video_chekboks': $("#video_chekboks").val(),
				'doc_chekboks': $("#doc_chekboks").val(),
				'id_cook': $("#id_cook").val(),
				'g-recaptcha-response': $("#g-recaptcha-response").val(),
				'captcha_post': $("#captcha_post").val(),
				'captcha_sid': $("#captcha_sid").val(),
		};		
		
		$.ajax({
			url:"/api_asked", 
			data:data, 
			type:'POST', 
			dataType: 'json',
			success:function(data){
				if( data.code == 1 ) {
					$('#okey').html(data.message);
				}
				if( data.code == 'error' ) {
					$('#okey').html(data.message);
				}
			}
		});

	});
  • Вопрос задан
  • 54 просмотра
Пригласить эксперта
Ответы на вопрос 2
ShadowOfCasper
@ShadowOfCasper
Middle User Interface Web Developer
Для отправки изображений на сервер можно придумать 2 вещи - 1 разложить изображение в бинарник (base64 - я так не делал но знаю что можно - гугли). 2 - более стандартный подход - специально для этого был придуман объект new formData()
Если к сути почему не работает - тебе в .val() падает обычный fakepath до файла. Он на сервер и придёт - обыкнованная строка
Работающий пример:
https://github.com/WebKieth/Black-UI/blob/master/s...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Biganto Москва
от 130 000 до 130 000 руб.
от 2 500 до 4 000 usd.
HTML Academy Москва
от 85 000 до 100 000 руб.