I am trying to send a JavaScript array to Django via ajax, as follows.
main.html:
<a href=#>Click</a>
<script>
$(document).on('click', 'a', function() {
var arr = [1, 2, 3, 4];
var formData = new FormData();
formData.append('arr', arr);
$.ajax({
url: '...',
type: 'POST',
data: formData,
processData: false,
contentType: false
});
});
</script>
And on the server side:
views.py:
@csrf_exempt
def main(request):
arr = request.POST.get('arr')
print(type(arr))
print(arr)
return render(request, 'main/main.html')
the result is a string: '1,2,3,4'.
If I retrieve the data with:
arr = request.POST.getlist('arr')
the result is a list containing a string: ['1,2,3,4']
How can I get a real list like [1, 2, 3, 4]?