I am trying to get a string data that is send from Ajax to Python. However, as I log the code, the data isn't sent. It's empty. Could you tell me why?
p.s. the purpose of the code is to get the name of the submit button to validate in views.py
javascript
<script type='text/javascript'>
$(".submit-btn").click(function(){
var button_pressed = JSON.stringify($(this).attr('name'));
$.ajax({
url: "{% url 'add_test' %}",
type: 'POST',
data: {'button_pressed' : button_pressed, 'csrfmiddlewaretoken': $("[name=csrfmiddlewaretoken]").val()},
})
});
</script>
views.py
def add_test(request):
if request.method == 'POST':
test_name = request.POST.get('test_name')
test_type = request.POST.get('test_type')
test_date = request.POST.get('test_date')
test_obj = Test(test_name = test_name, test_type = test_type, test_date = test_date)
test_obj.save()
button_pressed = request.POST.get('button_pressed')
#button_pressed = json.loads(button_pressed)
print button_pressed ,"+++++++++++++++++++++++++++++"
return HttpResponseRedirect('/test-management/test/')
test_list.html
<form class="form" method="POST" action="{% url 'add_test' %}">
{% csrf_token %}
<h2>Add Test</h2>
<div class="card-body">
<div class="form-group bmd-form-group">
<div class="input-group">
<p>Name :</p>
<input type="text" class="form-control" id="test_name" name="test_name" placeholder="Test Name...">
</div>
</div>
<div class="form-group bmd-form-group">
<div class="input-group">
<p>Type :</p>
<input type="text" class="form-control" id="test_type" name="test_type" placeholder="Test Type...">
</div>
</div>
<div class="form-group bmd-form-group">
<div class="input-group">
<p>Date :</p>
<input type="date" class="form-control" id="test_date" name="test_date" placeholder="Test Date...">
</div>
</div>
</div>
<div class="modal-footer justify-content-right">
<button type="submit" class="btn btn-primary btn-link btn-wd btn-lg" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-primary btn-link btn-wd btn-lg submit-btn" name="add_new">Add & New</button>
<button type="submit" class="btn btn-primary submit-btn" name="add">Add</button>
</div>
</form>
I am new to Django, so sorry if the question is silly. Thank for helping!
button_passednot passed by ajax?button_passedisn't passed.