@fuckingawesomenigga

Как передать изображение из формы (ajax)?

Имеется такой скрипт:
$('#edit').click(function(event) {
        ajaxEdit();
    });

    var ajaxEdit = function() {
        $.ajax({
                url: 'functions.php',
                type: 'POST',
                dataType: 'html',
                data: $('#edit-item').serialize()
            })
            .done(function() {
                ajaxShow(section);
            })
            .fail(function() {
                console.log("error");
            });
    }


Такая форма
<form action="" id="edit-item">
<input value="" name="id" type="hidden">
<input value="" name="name" type="text" placeholder="name">
<input type="file" name="picture" >
</form>


Как сделать, чтоб запрос отсылал изображение?
  • Вопрос задан
  • 215 просмотров
Решения вопроса 1
irishmann
@irishmann
Научись пользоваться дебаггером
Как-то так
var ajaxEdit = function() {
    var form_data = new FormData();
    form_data.append('file', $('input[name=picture]').prop('files')[0]);
    form_data.append('id', $('input[name=id]').val());
    form_data.append('name', $('input[name=name]').val());
    $.ajax({
        url: 'functions.php',
        type: 'POST',
        dataType: 'html',
        data: form_data
    })
    .done(function() {
        ajaxShow(section);
    })
    .fail(function() {
        console.log("error");
    });
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Eridani
@Eridani
Мимо проходил
Formdata используйте вместо сериализации
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
29 мар. 2024, в 17:14
4000 руб./за проект
29 мар. 2024, в 17:04
5000 руб./за проект
29 мар. 2024, в 17:03
3000 руб./за проект