$(function() {
$('#remove_favorite_btn').click(function (e){
e.preventDefault();
$.ajax({
type: "GET",
url: ,
success: function(data){
$('#remove_favorite_btn').attr('id', 'add_favorite_btn');
}
});
});
$('#add_favorite_btn').click(function (e){
e.preventDefault();
$.ajax({
type: "GET",
url: ,
success: function(data){
$('#add_favorite_btn').attr('id', 'remove_favorite_btn');
}
});
});
});
都在同一個頁面
當 add_favorite_btn click 後,成功則將 add_favorite_btn 的 id 屬性改為 remove_favorite_btn
此時我在按下去,照我的想法是可以直接啟動 remove_favorite_btn event
但結果他還是在運行 add_favorite_btn 的活動,而不是 remove_favorite_btn
怎麼會這樣?
先不说卡死的原因,首先你这个dom时间绑定的想法有问题,页面加载完$('#remove_favorite_btn'), $('#add_favorite_btn')这两个click的绑定只能成功一个,你的第二个在现在dom里是没有的,然后你再第一个事件里改了这个元素id,但是这个不会改变这个dom节点绑定的click事件,这个事件不是映射关系。
卡死的原因我觉得应该是每个事件都绑了ajax异步,你点击过多导致的。