大家好! 我正在寫一個簡單的Django應用程序。在其中一個頁面上有腳本,它用於點擊按鈕並使用ajax帖子。 問題是:post方法不會導致服務器代碼執行,只是每次都會執行錯誤函數。爲什麼後沒有做任何事
腳本:
<script type="text/javascript">
(function($) {
$(document).ready(function(){
{% for obj in cl.result_list %}
$('#done_{{ obj.pk }}').click(function() {
if ($(this).html().indexOf("icon-yes") != -1) {
$action = "no";
}
else {
$action = "yes";
}
$.ajax({
type: "POST",
url: "/on_hold_done/done/" + $action + "/{{ obj.pk }}/",
success: function(response) {
alert("success")
},
error: function(response) {
alert("error")
}
})
});
{% endfor %}
});})(django.jQuery);
</script>
在urls.py:
(r"^on_hold_done/(on_hold|done)/(yes|no)/(\d*)/$", "todo.views.on_hold_done")
在views.py:
@staff_member_required
def on_hold_done(request, mode, action, pk):
"""simple code here"""
return HttpResponse('')
使用Firebug查看您從服務器獲得的響應。 – ThiefMaster 2011-03-29 12:58:57
$ action變量看起來像可能會導致問題,因爲$在jQuery中有特殊的功能。 – 2011-03-29 13:26:18
@Bjorn:命名變量'$ action'不是問題。 JavaScript變量可以包含'$'字符。 '$'變量只是對'jQuery'的引用。 – 2011-03-29 13:33:58