Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   проблемы с FormData (https://javascript.ru/forum/dom-window/63176-problemy-s-formdata.html)

alex8935 22.05.2016 01:53

проблемы с FormData
 
Доброго времени суток. Произошла такая ситуация, есть модальное окно(использую AdminLTE 2, bootbox), нужно использовать FormData/serialize/, но ajax`ом ничего не приходит. Вот код, помогите, пожалуйста.
$('button.add-photoService').on('click', function () {
            $.ajax({
                url: '/admin/services/newPhotoServiceView/',
                success: function (data)
                {
                    bootbox.dialog({
                        title: 'Новая фотоуслуга',
                        message: data,
                        buttons: {
                            success: {
                                label: 'Добавить',
                                className: 'btn-success',
                                callback: function ()
                                {
                                    var formData = new FormData($("form.test")[0]);

                                    console.log(formData);

                                    $.ajax({
                                        url: '/admin/services/createNewPhotoService/',
                                        type: 'POST',
//                                        cache: false,
                                        processData: false,
                                        contentType: false,
                                        data: formData,
                                        success: function(xhr, data)
                                        {
                                            bootbox.alert(xhr.responseText);
                                        },
                                        error: function(xhr, data)
                                        {
                                            bootbox.alert(xhr.responseText);
                                        }
                                    });

                                }
                            },
                            danger:{
                                label: 'Отмена',
                                className: 'btn-danger',
                                callback: function(){}
                            }
                        }
                    });
                }
            });
        });


<form class="test">
    <div class="form-group">
        <label for="name">Название фотоуслуги</label>
        <input type="text" class="form-control" id="name">
    </div>
    <div class="form-group">
        <label for="image">Изображение фотоуслуги</label>
        <input type="file" class="form-control" id="image">
    </div>
</form>

laimas 22.05.2016 08:44

Цитата:

Сообщение от alex8935
но ajax`ом ничего не приходит

Это не из-за Ajax, а из-за отсутствия имен у полей формы.

alex8935 22.05.2016 09:38

Цитата:

Сообщение от Rise (Сообщение 417265)
alex8935, какой type у 'button.add-photoService' и находится ли она между тэгами form или имеет ли атрибут form?

type="button". Нет, он не находится между тэгами form.

alex8935 22.05.2016 09:40

Цитата:

Сообщение от laimas (Сообщение 417267)
Это не из-за Ajax, а из-за отсутствия имен у полей формы.

Да, действительно, я вместо id указал name и всё заработало. Спасибо большое!


Часовой пояс GMT +3, время: 01:58.