Sample Ajax GET/POST Request in Django

Sample Ajax GET/POST Request in Django

Let us make a test scenario here: A dropdown field which on change we are going to send a Get/Post request to Django and return response.

Let us start coding….

HTML code

<select id="select_dropdown">
  <option value="joshua">joshua</option>
  <option value="peter">peter</option>
  .... ....

Create an Ajax request

Let’s make an Ajax request after the change in the dropdown field.

$(document).ready(function () {
  $("#select_dropdown").change(function () {
    var e = document.getElementById("select_dropdown");
    var value = e.options[e.selectedIndex].value;

      url: "your-url",
      type: "post", // or "get"
      data: value,
      headers: { "X-CSRFToken": "{{ csrf_token }}" }, // for csrf token
      success: function (data) {

Handle AJAX request in django view

Here on change of a post request is called. Now let’s handle the view.

from django.http import JsonResponse
def post(request):
    if request.method == "POST": #os request.GET()
        get_value= request.body
        # Do your logic here coz you got data in `get_value`
        data = {}
        data['result'] = 'you made a request'
        return HttpResponse(json.dumps(data), content_type="application/json")

Thats all.

In conclusion

Above code should work both GET and POST methods. If you have any questions, please share in comments section below.


If you like this article, you can buy me a coffee. Thanks!

Last updated: Aug 30, 2023

← Previous
Using IntellijIdea/Pycharm Within An Exisiting Virtualenv

Adding virtual environment in PyCharm/Intellij IDEA for older and newer versions

Next →
Working with Formsets

This post is deprecated and may not be useful. As django documentation says: A formset is a layer …

Share Your Thoughts
M↓ Markdown