This may be basic, but I've spent two days, read countless tutorials and I still can not get this to work. For simplicitly I tried to accomplish a basic task just to see it work. I want to send make an ajax call to my donate view. I see that it successfully passes through but I was expecting that my template would also get updated to "TRUE" but it remains "FALSE". Any help or suggestions I appreciate.
my jquery...
$.ajax({
type: "POST",
url:"/donate/",
data: {
'test': 'success',
},
success: function(){
alert('test')
},
error: function(){
alert("Error");
});
this is my view...
def donate(request):
if request.is_ajax():
test = "TRUE"
if request.method == 'POST':
form = DonateForm(request.POST)
if form.is_valid():
form.save()
else:
form = DonateForm()
test = "FALSE"
return render_to_response('donate_form.html', {'form':form,'test':test}, context_instance=RequestContext(request))
my template include this...
<h1>{{ test }}</h1>
Update/Solution
Like mentioned in the comments on this question, I was not doing anything the the returned data. I updated my success call to the following and it worked
$.ajax({
type: "POST",
url:"/donate/",
data: {
'zip': zip,
},
success: function(data){
results = $(data).find('#results').html()
$("#id_date").replaceWith("<span>" + results + "</span >");
},
error: function(){
alert("Error");
},
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…