Вместо этого используйте простую кнопку
<button type="button" onclick="sendData()">Save/button>
<input type="submit" name="save" id="save" value="Save">
Сделайте эту функцию
function sendData(){
$.ajax({
type: 'POST',
url: '{% url "myproject:save_form" %}',
data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
formdata: JSON.stringify($("#idForm").serialize())
},
success:function(json){
let result = json.mylist[0];
$("#status").html(result);
},
error : function(xhr,errmsg,err) {
alert("ajax error")
}
});
}
Вы также должны передать токен csrfmiddlewaretoken
в данных ajax в середину csrf, доверяя вашему запросу.
Вы можете выполнить обновление в обратном вызове ajax success.
Update
На стороне сервера вы можете получить сериализованные данные, как это
if request.method == 'POST' and 'save' in request.POST:
print("runs save form")
data=json.loads(request.POST.get('formdata'))
mylist= [5]
return JsonResponse({'mylist':mylist})