原代碼
$(document).ready ->
$('.comments a.btn').click (event) ->
console.log('aa')
$.ajax({
url:'/comments',
type:'POST',
data:$('#new_comment').serialize(),
success:(data)->$('body').append('success')
});
因為元素$('.comments a.btn')是一次ajax請求后新增的,所以在$(document).ready的時候,click方法并沒有綁定上去。
改動后代碼
$(document).on 'click','.comments a.btn',()->
console.log('aa')
$.ajax({
url:'/comments',
type:'POST',
data:$('#new_comment').serialize(),
success:(data)->$('body').append('success')
})
使用 on() 方法添加的事件處理程序適用于當(dāng)前及未來的元素(比如由腳本創(chuàng)建的新元素)。
http://www.runoob.com/jquery/event-on.html