Отправить форму (django-форму) с Imagefield через Jquery / Ajax Post?
У меня возникли некоторые проблемы с отправкой формы (Django-form) с полем изображения с помощью Jquery / ajax POST. Я возвращаюсьПоле обязательно для заполнения ошибки проверки на поле изображения.
Я пробовал разные решения с добавлением formData, но пока безрезультатно. Я на правильном пути? Пожалуйста, укажите мне в правильном направлении. Спасибо!
Обновление: я могу установить для поля изображения значение required = false и не получить ошибку проверки, но я хочу, чтобы поле было обязательным, и кажется, что форма все еще не 'отправить изображение ..
Основная функция выглядит так:
$(function() {
$('#imageupload').on('click', function() {
$('#dialog-modal').load('upload/ #myform');
$('#dialog-modal').dialog({
height: 550,
width: 280,
modal: true,
buttons: {
Send: function() {
var dialog = $(this),
form = $('#myform'),
data = form.serialize();
$('.off').remove();
$.ajax({
url: 'upload/',
data: data,
type: 'post',
success: function(response) {
res = $.parseJSON(response);
if (res['status'] == 'OK') {
alert('Thank you!');
dialog.dialog('close');
}
else if (res['status'] == 'bad') {
alert('Please try again!');
delete res['status']
var errors = res;
$.each(errors, function(key, value) {
var err = $('<span></span>', {
'class': 'off',
'text': value
}),
br = $('<br><br>', {
'class': 'off',
}),
input = $('#id_'+key).parent();
br.appendTo(input);
err.appendTo(input);
err.css('color', 'red').css('font-size', '10px');
});
}
}
});
}
}
});
});
})
Форма выглядит так, это 's в дочернем html, который загружается в диалоговое / модальное окно jquery:
{% csrf_token %}
Upload
<p>Name:</p>
{{ form.name }}
<br>
<p>Type:</p>
{{ form.type }}
<br>
<p>Description:</p>
{{ form.description }}
<br>
<p>Picture:</p>
{{ form.picture }}