$.ajax({ type: "POST", url: "/path/to/view/", data: {form_data}, dataType: "json", success: function(data) { // success handling code }, error: function(jqXHR, textStatus, errorThrown) { // error handling code } });
def my_view(request): if request.method == "POST": form = MyForm(request.POST) if form.is_valid(): # process form data return JsonResponse({"success": True}) else: return JsonResponse({"success": False, "errors": form.errors}) else: form = MyForm() return render(request, "my_template.html", {"form": form})
urlpatterns = [ # ... url(r'^path/to/view/$', views.my_view, name='my_view'), ]
from django.views.decorators.csrf import csrf_exempt, csrf_protect
@csrf_protect def my_view(request): # ...
MIDDLEWARE = [ # ... 'django.middleware.csrf.CsrfViewMiddleware', # ... ]
上一篇:AJAX表单无法验证