2012-12-05 120 views
1

我有一些Django呈現良好的HTML。我想單擊HTML上的一個按鈕,導致在視圖中觸發事件。Django按鈕ajax點擊

它看起來不像按鈕導致post觸發。我不確定我做錯了什麼。

這是我的views.py代碼:

def log(request): 
    if not request.POST: 
    template = loader.get_template('log.html') 
    html = template.render(Context()) 
    return HttpResponse(html) 
    print "Post" 

這是我log.html

<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
<script type="text/javascript"> 
    $("#update_log_button").bind("button", function(){ 
     $.post("hello"); 
     return false; 
    }); 
</script> 
</head> 
<body> 
<p> 
    <span>SPHIINX Log</span> 
</p> 
<p> 
    <textarea cols="2" name="log" rows="25"></textarea> 
    <input id="update_log_button" name="update_log" type="button" value="Update Log"/> 
</p> 
</body> 
</html> 

回答

3

有你爲什麼不直接使用click事件原因是什麼?

試試這個:

<script type="text/javascript"> 
    $(function(){ 
    $("#update_log_button").click(function(){ 
     $.post(
     url : "/hello/", 
     dataType:"html", 
     success: function(data, status, xhr){ 
      //do something with your data 
     } 
     ); 
     return false; 
    }); 
}); 
</script> 

如果是動態創建的按鈕,那麼你可能想使用bind功能click事件處理程序附加到元素:

<script type="text/javascript"> 
    $(function(){ 
    $("#update_log_button").bind('click', function(){ 
     $.post(
     url : "/hello/", 
     dataType:"html", 
     success: function(data, status, xhr){ 
      //do something with your data 
     } 
     ); 

     return false; 
    }); 
    }); 
</script> 

試試這個網址包括jQuery庫:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
+0

那沒用,是不是有什麼特效克與我的$ .post? – user1357182

+0

可能不是我改變了答案...注意網址。改變你正在使用的東西! –

+0

那也不適合我。我敢肯定,這是我對JS/AJAX缺乏理解。 – user1357182