AJAX呼び出しを使用してアプリケーション内の「Add to Favorite」ボタンを作成しようとしています。私のHTMLコードスニペットは、このためのjQueryのは、私が何をしたいのかDjangoのAJAX呼び出し完了時に、「お気に入りボタンに追加」の成功関数が呼び出されない
$("a#favorite").click(function(){
var link = $(this).attr("href");
$.ajax({
type: "POST",
url: link,
success: function()
{
alert("Function succeeded");
$("#favDiv").html("Favourites");
},
error: function()
{
alert("Function failed");
}
});
return false;
});
ある
{% if user.is_authenticated %}
<div id="favDiv"> <a id="favorite" href="/blogs/{{blog.id}}/favorite/"> Add to Favourites </a> </div>
{% endif %}
あるユーザーが好みのボタンをクリックしたときに、その後のdiv内のHTMLが置き換えられなければならないということです単純なテキスト。
私views.py
は、私は、データベースが更新されるボタンをクリックしたときにすべてが、正常に動作している
def favorite_blog(request,blog_id):
blog = get_object_or_404(Entry, pk=blog_id)
current_user = request.user
fav = favorite(user=current_user,entry = blog)
fav.save()
if request.is_ajax():
return_message = "Set Favourite"
return HttpResponse(return_message,mimetype='application/javascript')
else:
return HttpResponseRedirect(reverse('view_blog', args=(),kwargs={'blog_id': blog.id,}))
含まれている、しかしsuccess: function()
は実行しないでも可能な理由何ができるかfailure: function()
もされていません。私はボタンのような別の同様のスクリプトがあり、それはうまく動作します。
のはconsole.logを行いますあなたのサンプルコードに誤って入力されているかどうかは分かりませんが、成功関数とエラー関数の間にカンマがありません。 –
pdbを使用すると、コードをステップ実行して、望ましくないところで実行している箇所を確認することができます。 – dm03514